Студопедия — R.9.2 Члены класса
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

R.9.2 Члены класса






список-членов: описание-члена список-членов opt спецификация-доступа: список-членов opt описание-члена: спецификации-описания opt список-описателей-членов opt; определение-функции; opt уточненное-имя; список-описателей-членов: описатель-члена список-описателей-членов, описатель-члена описатель-члена: описатель спецификация-чистой opt идентификатор opt: выражение-константа спецификация-чистой: = 0 С помощью конструкции список-членов можно описать данные, функции,классы, элементы перечисления ($$R.7.2), битовые поля, друзей($$R.11.4) и имена типов ($$R.7.1.3, $$R.9.1). Кроме того,список-членов может содержать описания, устанавливающие доступ кименам членов, см. $$R.11.3. Никакой член не может быть дваждыописан в списке-членов. Список-членов определяет все множествочленов данного класса, т.е. нельзя добавить еще один член в каком-либодругом описании. Отметим, что одно имя может обозначать несколько функций-членовпри условии, что их типы достаточно отличаются друг от друга ($$R.13).Укажем, что описатель-члена не может содержать инициализатора ($$R.8.4).Инициализация члена возможна с помощью конструктора, см. $$R.12.1. Член не может иметь спецификацию auto, extern или register. Конструкция спецификации-описания может отсутствовать только вописании функции. Конструкция список-описателей-членов можетопускаться только после конструкций спецификация-класса,спецификация-перечисления или спецификация-описания, если последняяимеет вид friend спецификация-сложного-типа. Конструкцияспецификация-чистой используется только при описании виртуальнойфункции ($$R.10.2). Если члены являются объектами классов, то эти классы должныбыть ранее описаны. В частности, класс C1 не может содержать объекткласса C1, но может содержать указатель или ссылку на класс C1.Если в типе нестатического члена используется массив, то всеразмеры всех индексов массива должны быть указаны. Приведем простой пример описания класса: struct tnode { char tword[20]; int count; tnode *left; tnode *right; }; Здесь класс содержит массив из двадцати символов, целое и двауказателя на ту же структуру. После появления такого описанияследующее: tnode s, *sp; задает s как объект типа tnode и sp как указатель на tnode. С учетомэтих описаний s->count обозначает член count структуры, на которуюуказывает sp; s.left обозначает указатель left на поддеревоструктуры s; s.right->tword[0] обозначает первый символ членаtword поддерева структуры s, на которую указывает right. Нестатические члены класса, представляющие данные и описанныеподряд и без использования спецификации-доступа, размещаются внутриобъекта типа класс так, что позже описанные члены имеют большие адреса.Порядок размещения таких членов, если их описание перемежаетсяописаниями со спецификацией-доступа, зависит от реализации ($$R.11.1).Принятые в реализации правила выравнивания могут привести к тому,что два соседних члена не будут располагаться сразу друг за другом.К этому же могут привести правила выделения памяти для виртуальныхфункций ($$R.10.2) и виртуальных базовых классов ($$R.10.1);см. также $$R.5.4. Функция-член ($$R.9.3), имя которой совпадает с именем класса,является конструктором ($$R.12.1). Имя статического члена данных,элемента перечисления, члена безымянного объединения или вложенноготипа не может совпадать с именем класса.







Дата добавления: 2015-09-04; просмотров: 331. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Различия в философии античности, средневековья и Возрождения ♦Венцом античной философии было: Единое Благо, Мировой Ум, Мировая Душа, Космос...

Характерные черты немецкой классической философии 1. Особое понимание роли философии в истории человечества, в развитии мировой культуры. Классические немецкие философы полагали, что философия призвана быть критической совестью культуры, «душой» культуры. 2. Исследовались не только человеческая...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия