SymTagEnum
Указывает тип символа.
Синтаксис
enum SymTagEnum {
SymTagNull,
SymTagExe,
SymTagCompiland,
SymTagCompilandDetails,
SymTagCompilandEnv,
SymTagFunction,
SymTagBlock,
SymTagData,
SymTagAnnotation,
SymTagLabel,
SymTagPublicSymbol,
SymTagUDT,
SymTagEnum,
SymTagFunctionType,
SymTagPointerType,
SymTagArrayType,
SymTagBaseType,
SymTagTypedef,
SymTagBaseClass,
SymTagFriend,
SymTagFunctionArgType,
SymTagFuncDebugStart,
SymTagFuncDebugEnd,
SymTagUsingNamespace,
SymTagVTableShape,
SymTagVTable,
SymTagCustom,
SymTagThunk,
SymTagCustomType,
SymTagManagedType,
SymTagDimension,
SymTagCallSite,
SymTagInlineSite,
SymTagBaseInterface,
SymTagVectorType,
SymTagMatrixType,
SymTagHLSLType,
SymTagCaller,
SymTagCallee,
SymTagExport,
SymTagHeapAllocationSite,
SymTagCoffGroup,
SymTagInlinee,
SymTagTaggedUnionCase,
};
Азы
Элемент | Описание |
---|---|
SymTagNull |
Указывает, что символ не имеет типа. |
SymTagExe |
Указывает, что символ является файлом .exe.
есть только один символ SymTagExe для каждого хранилища символов.
Он служит глобальной областью и не имеет лексического родительского элемента. |
SymTagCompiland |
Указывает символ компилятора для каждого компонента компилятора хранилища символов.
Для собственных приложений символы SymTagCompiland соответствуют файлам объектов, связанным с изображением. Для некоторых видов образов microsoft Intermediate Language (MSIL) существует один компилятор для каждого класса. |
SymTagCompilandDetails |
Указывает, что символ содержит расширенные атрибуты компилятора.
получение этих свойств может потребовать загрузки символов компилятора. |
SymTagCompilandEnv |
Указывает, что символ является строкой среды, определенной для компилятора. |
SymTagFunction |
Указывает, что символ является функцией. |
SymTagBlock |
Указывает, что символ является вложенным блоком. |
SymTagData |
Указывает, что символ — это данные. |
SymTagAnnotation |
Указывает, что символ предназначен для заметки кода.
Дочерние элементы этого символа — это постоянные строки данных ( SymTagData , LocIsConstant и DataIsConstant ).
Большинство клиентов игнорируют этот символ. |
SymTagLabel |
Указывает, что символ является меткой. |
SymTagPublicSymbol |
Указывает, что символ является открытым символом. Для собственных приложений этот символ является внешним символом COFF при связывании изображения. |
SymTagUDT |
Указывает, что символ — это определяемый пользователем тип (структура, класс или объединение). |
SymTagEnum |
Указывает, что символ является перечислением. |
SymTagFunctionType |
Указывает, что символ является типом подписи функции. |
SymTagPointerType |
Указывает, что символ является типом указателя. |
SymTagArrayType |
Указывает, что символ является типом массива. |
SymTagBaseType |
Указывает, что символ является базовым типом. |
SymTagTypedef |
Указывает, что символ является typedef псевдонимом другого типа. |
SymTagBaseClass |
Указывает, что символ является базовым классом определяемого пользователем типа. |
SymTagFriend |
Указывает, что символ является другом определяемого пользователем типа. |
SymTagFunctionArgType |
Указывает, что символ является аргументом функции. |
SymTagFuncDebugStart |
Указывает, что символ является конечным расположением пролога функции. |
SymTagFuncDebugEnd |
Указывает, что символ является начальным расположением эпилога функции. |
SymTagUsingNamespace |
Указывает, что символ является именем пространства имен, активным в текущей области. |
SymTagVTableShape |
Указывает, что символ является описанием виртуальной таблицы. |
SymTagVTable |
Указывает, что символ является указателем виртуальной таблицы. |
SymTagCustom |
Указывает, что символ является пользовательским символом.
пакет SDK для доступа к интерфейсу отладки (DIA) Майкрософт не обеспечивает дальнейшее толкование этих символов. |
SymTagThunk |
Указывает, что символ является thunk, используемым для совместного использования данных между 16-разрядным и 32-разрядным кодом. |
SymTagCustomType |
Указывает, что символ является пользовательским символом компилятора. |
SymTagManagedType |
Указывает, что символ находится в метаданных. |
SymTagDimension |
Указывает, что символ является многомерным массивом FORTRAN. |
SymTagCallSite |
Указывает, что символ представляет сайт вызова. |
SymTagInlineSite |
Указывает, что символ представляет встроенный сайт. |
SymTagBaseInterface |
Указывает, что символ является базовым интерфейсом. |
SymTagVectorType |
Указывает, что символ является типом вектора. |
SymTagMatrixType |
Указывает, что символ является типом матрицы. |
SymTagHLSLType |
Указывает, что символ является типом языка шейдера высокого уровня. |
SymTagCaller |
Указывает, что символ представляет сведения о вызывающем объекте оптимизации с помощью профилей (PGO). |
SymTagCallee |
Указывает, что символ представляет сведения о вызываемом объекте PGO. |
SymTagExport |
Указывает, что символ является экспортом из библиотеки DLL. |
SymTagHeapAllocationSite |
Указывает, что символ представляет сайт выделения кучи (например, вызов operator new ) |
SymTagCoffGroup |
Указывает, что символ является группой COFF. |
SymTagInlinee |
Указывает, что символ представляет встроенный сайт (см. SymTagInlineSite ). |
SymTagTaggedUnionCase |
Указывает, что символ является помеченным объединением (например, тип перечисления Rust) |
Замечания
Все символы в файле отладки имеют тег идентификации, указывающий тип символа.
Метод IDiaSymbol::get_symTag
возвращает значения из этого перечисления.
Значения в этом перечислении передаются следующим методам, чтобы ограничить область поиска определенным типом символов:
Требования
Заголовок: cvconst.h