IDiaSymbol::get_undecoratedNameEx
Извлекает часть или все неразрывное имя для имени декорированного (компоновка) C++.
Синтаксис
HRESULT get_undecoratedNameEx(
DWORD undecorateOptions,
BSTR* pRetval
);
Параметры
undecoratedOptions
[in] Задает сочетание флагов, которые управляют возвращаемыми значениями. См. раздел "Примечания" для определенных значений и их действий.
pRetVal
[out] Возвращает неоценированное имя для декорированного имени C++.
Возвращаемое значение
При успешном выполнении возвращает S_OK
, в противном случае возвращает S_FALSE
или код ошибки.
Примечание.
Возврат значения S_FALSE
означает, что свойство недоступно для символа.
Замечания
Это undecorateOptions
может быть сочетание следующих флагов.
Примечание.
Имена флагов не определены в пакете SDK DIA, поэтому необходимо либо добавить объявления в код, либо использовать необработанные значения.
Флаг | значение | Описание |
---|---|---|
UNDNAME_COMPLETE | 0x0000 | Включает полную некорпорацию. |
UNDNAME_NO_LEADING_UNDERSCORES | 0x0001 | Удаляет ведущие знаки подчеркивания из расширенных ключевое слово Майкрософт. |
UNDNAME_NO_MS_KEYWORDS | 0x0002 | Отключает расширение расширенных ключевое слово Майкрософт. |
UNDNAME_NO_FUNCTION_RETURNS | 0x0004 | Отключает расширение возвращаемого типа для первичного объявления. |
UNDNAME_NO_ALLOCATION_MODEL | 0x0008 | Отключает расширение модели объявления. |
UNDNAME_NO_ALLOCATION_LANGUAGE | 0x0010 | Отключает расширение описатель языка объявления. |
UNDNAME_RESERVED1 | 0x0020 | ЗАРЕЗЕРВИРОВАНО. |
UNDNAME_RESERVED2 | 0x0040 | ЗАРЕЗЕРВИРОВАНО. |
UNDNAME_NO_THISTYPE | 0x0060 | Отключает все модификаторы типа this . |
UNDNAME_NO_ACCESS_SPECIFIERS | 0x0080 | Отключает расширение описателей доступа для членов. |
UNDNAME_NO_THROW_SIGNATURES | 0x0100 | Отключает расширение "throw-signatures" для функций и указателей на функции. |
UNDNAME_NO_MEMBER_TYPE | 0x0200 | Отключает расширение static или virtual члены. |
UNDNAME_NO_RETURN_UDT_MODEL | 0x0400 | Отключает расширение модели Майкрософт для возврата определяемого пользователем типа. |
UNDNAME_32_BIT_DECODE | 0x0800 | Отменяет 32-разрядные декорированные имена. |
UNDNAME_NAME_ONLY | 0x1000 | Возвращает только имя первичного объявления; возвращает только [область::]name. Расширяет параметры шаблона. |
UNDNAME_TYPE_ONLY | 0x2000 | Входные данные — это только кодировка типов; создает абстрактный декларатор. |
UNDNAME_HAVE_PARAMETERS | 0x4000 | Доступны реальные параметры шаблона. |
UNDNAME_NO_ECSU | 0x8000 | Подавляет перечисление/класс/структуру/объединение. |
UNDNAME_NO_IDENT_CHAR_CHECK | 0x10000 | Подавляет проверка для допустимых символов идентификатора. |
UNDNAME_NO_PTR64 | 0x20000 | Не включает ptr64 в выходные данные. |