Атрибут typedef

Ключевое слово typedef IDL позволяет объявления typedef , которые очень похожи на объявления typedef языка C.

/* IDL file typedef syntax */
typedef [[ [ idl-type-attribute-list ] ]] type-specifier declarator-list;

/* ACF typedef syntax */
typedef [ acf-type-attribute-list ] typename;

Параметры

idl-type-attribute-list

Указывает один или несколько атрибутов, применяемых к типу. Допустимые атрибуты типов в файле IDL включают [handle], [switch_type], [transmit_as]; атрибут указателя [ref], [unique], или [ptr]; и атрибуты использования [context_handle], [string], и [ignore]. Разделите несколько атрибутов запятыми.

описатель типа

Задает базовый тип, структуру, объединение, тип перечисления или идентификатор типа. Необязательная спецификация хранилища может предшествовать описательу типа. Ключевое слово const может предшествовать описательу типа.

declarator-list

Задает стандартные деклараторы MIDL, такие как идентификаторы, деклараторы указателей и деклараторы массива. Дополнительные сведения см. в статье "Массив" и Sized-Pointer "Атрибуты", "Массивы" и " Массивы" и "Указатели". Список деклараторов состоит из одного или нескольких деклараторов, разделенных запятыми.

acf-type-attribute-list

Указывает один или несколько атрибутов, применяемых к типу. Допустимые атрибуты типа в ACF включают [allocate], [encode], и [decode].

Typename

Указывает тип, определенный в файле IDL.

Remarks

Объявление typedef IDL дополняется, чтобы можно было связать атрибуты типов с определенными типами. Допустимые атрибуты типа включают [handle], [switch_type], [transmit_as]; атрибут указателя [ref], [unique], или [ptr]; и атрибуты использования [context_handle], [string], и [ignore].

Ключевое слово typedef в ACF применяет атрибуты к типам, определенным в соответствующем IDL-файле. Например, атрибут типа выделения позволяет настроить выделение и освобождение памяти как приложением, так и заглушками.

Оператор typedef ACF отображается как часть тела ACF. Обратите внимание, что синтаксис typedef ACF отличается от синтаксиса typedef IDL и синтаксиса typedef языка C. Новые типы не могут быть введены в ACF.

См. также раздел

Файл конфигурации приложения (ACF)

Выделить

Массивы

const

context_handle

decode

Кодирования

Перечисления

Обрабатывать

Файл определения интерфейса (IDL)

Игнорировать

ptr

Ref

Строка

Структура

switch_type

transmit_as

Союза

Уникальный