R Справочное руководство по С++

R.9 Классы.

   


Назад  |  Вперёд

Класс есть тип. Его имя используется как имя-класса ($$R.9.1), т.е. становится зарезервированным словом в его области видимости.

           имя-класса:
               идентификатор

Для образования конструкции имя-класса используются спецификации-класса и спецификации-сложного-типа ($$R.7.1.6). Объект класса состоит из последовательности (возможно пустой) членов.

           спецификация-класса:
             заголовок-класса { список-членов opt }

           заголовок-класса:
             служебное-слово-класса идентификатор opt спец-базовых opt
             служебное-слово-класса имя-класса спец-базовых opt

           служебное-слово-класса:
              class
              struct
              union

Имя класса можно использовать в качестве конструкции имя-класса даже в списке-членов самого этого класса. Обычно спецификацию-класса называют описанием класса. Класс считается определенным, как только появится спецификация-класса, несмотря на то, что его функции-члены могут быть еще неопределены.

Объекты пустого класса имеют ненулевой размер.

Объекты типа класс можно присваивать, передавать в качестве параметров функций и получать в качестве значения, возвращаемого функцией (за исключением объектов тех классов, для которых копирование ограничено, см. $$R.12.8). Другие возможные операции, такие, как сравнение на равенство, могут определяться пользователем, см. $$R.13.4.

Структурой называется класс, описанный со служебным-словом-класса struct; ее члены и базовые классы ($$R.10) считаются общими по определению ($$R.11). Объединением называется класс, описанный со служебным-словом-класса union; его члены считаются общими по определению, и в любой момент времени объединение содержит только один член ($$R.9.5).


Назад  |  Вперёд


OtDiatlovaOU
К началу книги

Оформление и дизайн книги OtDiatlovaOU.
Вся книга, архив.