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

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

R.9.5 Объединения






Объединение можно представить как структуру, все члены имеютнулевое смещения, а размер ее достаточно велик, чтобывмещать любой из ее членов. В любой момент времени объединениеможет содержать только один член. В объединении могут бытьфункции-члены (в том числе конструкторы и деструкторы), но невиртуальные функции ($$R.10.2). Объединение не может иметь базовыхклассов и не может само использоваться в качестве базового класса.Членом объединения не может быть объект класса с конструктором илидеструктором, а также с определенной пользователем операциейприсваивания ($$R.13.4.3). Объединение не может содержать статическихчленов, представляющих данные. Объединение вида union { список-членов } называется безымянным объединением, оно определяет объект без имени(и без типа). Имена всех членов безымянного объединения должныотличаться от других имен в той области видимости, в которой описанообъединение; их можно использовать в этой области видимостинепосредственно, без обычных операций доступа к членам ($$R.5.2.4).Приведем пример: void f() { union { int a; char* p; }; a = 1; //... p = "Jennifer"; //... } Здесь a и p используются как обычные переменные (не члены), но посколькуони входят в одно объединение, их адреса совпадают. Глобальные безымянные объединения можно описать со спецификациейstatic. Безымянные объединения не должны содержать частных илизащищенных членов ($$R.11), а также функций-членов. Если описаны объекты объединения или указатели на него, тооно не считается безымянным, например, union { int aa; char* p; } obj, *ptr=&obj; aa = 1; // ошибка ptr->aa = 1; // нормально Здесь присваивание простому имени aa незаконно, т.к. имя члена непривязано ни к какому объекту. Инициализация объединений, не имеющих конструкторов, описываетсяв $$R.8.4.1.







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



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

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

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

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

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

В теории государства и права выделяют два пути возникновения государства: восточный и западный Восточный путь возникновения государства представляет собой плавный переход, перерастание первобытного общества в государство...

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

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