ВУЗ:
Составители:
Рубрика:
80
Класс может иметь имя, иногда называемое тегом. Тег становится
именем нового типа в программе. Каждый член класса распознаётся по
своему имени, которое должно быть уникальным в данном классе. Чле-
ны класса иногда называют его элементами или полями.
Хотя каждому имени члена класса сопоставлен определённый
тип, самостоятельным объектом такой член не является. Память выде-
ляется только для конкретного объекта вновь определенного типа в це-
лом.
Введем новые типы FIO и sotrudnik:
struct FIO{ char familia [39],
imya [30],
otchestvo [30]
};
struct sotrudnik{ FIO name;
char dolgnost [30];
int year;
float oklad };
Здесь заданы два новых типа структурных переменных и имена
этих типов – FIO, sotrudnik. Заметим, что наличие «;» после фигурных
скобок здесь обязательно.
Теперь можно объявить структурные переменные типа FIO
или sotrudnik обычным образом:
FIO name1, name2, name3;
sotrudnik s1, s2, s[50];
Теперь компилятором будет выделена память под переменные
name1, name2, name3, s1, s2 и под массив s из пятидесяти структур.
Отметим, что число байтов, выделяемое под структурную переменную,
не всегда равно сумме длин отдельных членов структуры из-за эффекта
выравнивания, производимого компилятором.
Чтобы определить выделенное число байтов, надо воспользовать-
ся операцией sizeof, например, так:
int nf=sizeof (FIO), ns=sizeof (sotrudnik);
Заметим также, что объявить структурные переменные можно од-
новременно с определением тега структуры:
struct DATE {
int day;
int month;
Страницы
- « первая
- ‹ предыдущая
- …
- 76
- 77
- 78
- 79
- 80
- …
- следующая ›
- последняя »
