Объектно-ориентированное программирование на языке С++. Лясин Д.Н - 29 стр.

UptoLike

Составители: 

29
client, а его значение было бы общим для всех объектов. Этого можно добиться,
объявив данный компонент статическим. Для этого в теле класса необходимо оп-
ределить компонент следующим образом:
static тип имя_статического_компонентного_данного;
Ключевое слово static определяет компонент статическим. Основное свой-
ство статического компонентного данного заключается в том, что память под него
выделяется единственный раз в программе, причем еще до определения объектов
данного класса. Для выделения памяти под статический элемент данных класса
необходимо вне класса на внешнем уровне программы поместить инициализатор
статического компонента вида
тип имя_класса :: имя_статического_компонентного_данного=выражение;
Встретив такой инициализатор, компилятор выделяет память под объект
указанного типа данных и заносит в него значение инициализирующего выраже-
ния.
При создании объектов класса память под статический элемент данных не
выделяется, все объекты работают с единственным статическим компонентом.
Обращаться к статическому компоненту класса
можно как к обычному компонен-
ту через имя уже существующего объекта, словно он является частью этого объек-
та. При этом необходимо учитывать, что, обращаясь к компонентному данному
через имя одного объекта, мы изменяем его значение и для всех остальных объек-
тов того же класса.
Так как память под статический элемент
данных выделяется еще до опреде-
ления объектов, существует еще один способ обращения к нему:
имя_класса :: имя_статического_компонентного_данного
Такой способ используется для изменения значения статического члена дан-
ных в тот момент, когда недоступен ни один из объектов класса.
client, а его значение было бы общим для всех объектов. Этого можно добиться,
объявив данный компонент статическим. Для этого в теле класса необходимо оп-
ределить компонент следующим образом:
       static тип имя_статического_компонентного_данного;
       Ключевое слово static определяет компонент статическим. Основное свой-
ство статического компонентного данного заключается в том, что память под него
выделяется единственный раз в программе, причем еще до определения объектов
данного класса. Для выделения памяти под статический элемент данных класса
необходимо вне класса на внешнем уровне программы поместить инициализатор
статического компонента вида
  тип имя_класса :: имя_статического_компонентного_данного=выражение;
       Встретив такой инициализатор, компилятор выделяет память под объект
указанного типа данных и заносит в него значение инициализирующего выраже-
ния.
       При создании объектов класса память под статический элемент данных не
выделяется, все объекты работают с единственным статическим компонентом.
Обращаться к статическому компоненту класса можно как к обычному компонен-
ту через имя уже существующего объекта, словно он является частью этого объек-
та. При этом необходимо учитывать, что, обращаясь к компонентному данному
через имя одного объекта, мы изменяем его значение и для всех остальных объек-
тов того же класса.
       Так как память под статический элемент данных выделяется еще до опреде-
ления объектов, существует еще один способ обращения к нему:
       имя_класса :: имя_статического_компонентного_данного
       Такой способ используется для изменения значения статического члена дан-
ных в тот момент, когда недоступен ни один из объектов класса.




                                       29