Символы и теги символов

Сведения об отладке скомпилированной программы хранятся в файле базы данных программы (PDB) в виде символов, доступных с помощью API пакета SDK для доступа к интерфейсу отладки (DIA). Все символы имеют свойство IDiaSymbol::get_symTag и свойство IDiaSymbol::get_symIndexId . Свойство symTag указывает тип символа, определенного перечислением SymTagEnum Enumeration . Это symIndexId значение DWORD , содержащее уникальный идентификатор для каждого экземпляра символа.

Символы также имеют свойства, которые могут указывать дополнительные сведения о символе, а также ссылки на другие символы, чаще всего iDiaSymbol::get_lexicalParent или IDiaSymbol::get_classParent. При запросе свойства, содержащего ссылку, ссылка возвращается в виде объекта IDiaSymbol . Такие свойства всегда связаны с другим свойством с тем же именем, но суффиксированы с идентификатором, например IDiaSymbol::get_lexicalParentId и IDiaSymbol::get_classParentId. Таблицы в расположениях символов, Лексическая иерархия типов символов и иерархия классов символов описывают свойства для каждого из различных типов символов. Эти свойства могут иметь соответствующие сведения о других символах или ссылки на них. *Id Так как свойства являются просто числовыми порядковыми идентификаторами связанных свойств, они опущены из дальнейших обсуждений. Они ссылаются только в тех случаях, когда это необходимо для уточнения параметров.

При попытке получить доступ к свойству, если ошибка не возникает и свойство символа было присвоено значение, метод get свойства возвращается S_OK. Возвращаемое значение S_FALSE указывает, что свойство недопустимо для текущего символа.

В этом разделе

Местоположения символов

Описывает различные типы расположений, которые может иметь символ.

Лексическая иерархия символьных типов

Описывает типы символов, формирующие лексические иерархии, такие как файлы, модули и функции.

Иерархия классов символьных типов

Описывает типы символов, соответствующие различным языковым элементам, таким как классы, массивы и возвращаемые типы функций.

См. также