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

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

R.7.1.3 Спецификация typedef






Описания со спецификацией typedef задают идентификаторы, которыепозднее могут использоваться для обозначения основных илипроизводных типов. Спецификация typedef недопустима в определении-функции($$R.8.3). имя-typedef: идентификаторВ пределах области видимости ($$R.3.2) описания typedef любойидентификатор, появляющийся в части любого из описателей,становится синтаксически эквивалентным служебному слову и обозначает тип,связанный с данным идентификатором, как описано в $$R.8. Таким образом,имя-typedef является синонимом другого типа. В отличие от описаниякласса ($$R.9.1) имя-typedef не добавляет нового типа. Например,после описания typedef int MILES, *KLICKSP; конструкции MILES distance; extern KLICKSP metricp; являются законными описаниями, тип distance есть int, а у metricpтип "указатель на int". С помощью typedef можно переопределить имя так, чтобы оно опятьобозначало тип, на который уже ссылалось, причем даже в той областивидимости, в которой тип был первоначально описан, например, typedef struct s { /*... */ } s; typedef int I; typedef int I; typedef I I; Безымянный класс, который определяется в typedef, получает вкачестве своего имени имя, использованное в typedef, например, typedef struct { /*.... */ } S; // имя структуры стало S С помощью описания typedef нельзя переопределить имя типа,описанного в этой же области видимости, так, чтобы оно обозначалодругой тип, например, class complex { /*... */ }; typedef int complex; // ошибка: переопределение Аналогично, нельзя описывать класс с именем типа, описанногов этой же области видимости, так, чтобы он обозначал другойтип, например, typedef int complex; class complex { /*... */ }; // ошибка: переопределение Имя-typedef, которое обозначает класс, является именем-класса($$R.9.1). Синоним нельзя использовать после следующих префиксов:class, struct и union, а также в именах конструкторов идеструкторов в описании самого класса, например, struct S { S(); ~S(); }; typedef struct S T; S a = T(); // нормально struct T* p; // ошибка







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



Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

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

Определение трудоемкости работ и затрат машинного времени На основании ведомости объемов работ по объекту и норм времени ГЭСН составляется ведомость подсчёта трудоёмкости, затрат машинного времени, потребности в конструкциях, изделиях и материалах (табл...

Гидравлический расчёт трубопроводов Пример 3.4. Вентиляционная труба d=0,1м (100 мм) имеет длину l=100 м. Определить давление, которое должен развивать вентилятор, если расход воздуха, подаваемый по трубе, . Давление на выходе . Местных сопротивлений по пути не имеется. Температура...

Огоньки» в основной период В основной период смены могут проводиться три вида «огоньков»: «огонек-анализ», тематический «огонек» и «конфликтный» огонек...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

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