Атрибуты #import (C++)
Предоставляет ссылки на атрибуты, используемые с директивой #import.
Блок, относящийся только к системам Microsoft
Для директивы #import доступны следующие атрибуты.
Атрибут |
Описание |
---|---|
Переименовывает зарезервированные слова C++ путем добавления двух знаков подчеркивания (__) к именам переменных, чтобы разрешить потенциальные конфликты имен. |
|
Указывает, что если на библиотеку типов ссылаются при помощи директивы #import, и при этом она сама ссылается на другую библиотеку типов, то компилятор может неявным образом выполнить директиву #import и для второй библиотеки типов. |
|
Указывает, что библиотека типов записывается в файл .tlh с сохранением кода, созданного с атрибутами. |
|
Исключает элементы из создаваемых файлов заголовка библиотеки типов. |
|
Задает префикс, используемый при именовании высокоуровневых свойств и методов. |
|
Задает другие префиксы для трех методов свойств. |
|
Отключает создание файла заголовка .tlh (основного файла заголовка). |
|
Отключает автоматическое исключение. |
|
Вставляет свой аргумент как исходный текст в заголовок библиотеки типов. |
|
Указывает компилятору определять и инициализировать переменные GUID в старом стиле, в форме LIBID_MyLib, CLSID_MyCoClass, IID_MyInterface и DIID_MyDispInterface. |
|
Отключает автоматическое исключение. |
|
Изменяет способ, которым компилятор создает функции оболочки для методов сдвоенных интерфейсов. |
|
Отключает создание заголовка .tli, который содержит реализацию функций-членов оболочки. |
|
Указывает, что пространство имен не генерируется компилятором. |
|
Указывает компилятору не искать библиотеки типов в реестре. |
|
Имеет ту же функцию, что и атрибут no_namespace, однако применяется для библиотек типов, для которых вы использовали директиву #import с атрибутом auto_search. |
|
Отключает создание интеллектуальных указателей для всех интерфейсов в библиотеке типов. |
|
Указывает компилятору сгенерировать низкоуровневые функции оболочки для методов и свойств disp-интерфейса, а также свойства, которые вызывают функцию IDispatch::Invoke и возвращают код ошибки HRESULT. |
|
Отключает создание функций оболочки обработки ошибок, а также объявлений property (C++), в которых используются такие функции оболочки. |
|
Указывает другой префикс, чтобы избежать конфликтов имен. |
|
Отключает использование классов поддержки COM в высокоуровневых функциях оболочки и принудительно использует вместо них низкоуровневые типы данных. |
|
Задает другие префиксы для трех методов свойств. |
|
Обходит проблемы конфликтов имен. |
|
Переименовывает пространство имен, к которому относится содержимое библиотеки типов. |
|
Имеет ту же функцию, что и атрибут rename_namespace, однако применяется для библиотек типов, для которых вы использовали директиву #import с атрибутом auto_search. |
|
Позволяет загружать библиотеки, отличные от основной библиотеки типов. |
Завершение блока, относящегося только к системам Microsoft