Я использую UnDecorateSymbolNameW
из dbghelp, чтобы не украшать имена символов Microsoft. Когда unecorating с UNDNAME_COMPLETE
, имя символа может иногда иметь, что я понимаю, какая-то компилятор прилагается к нему. Например, символ vftable может иногда иметь фигурный скобковый блок, содержащий ключевое слово for
, за которым следует имя класса/интерфейса, например.Undecorated Microsoft Symbol: SomeClass :: `vftable '{для` Foo :: Bar'}
SomeClass :: 'vftable' {для 'Foo :: Bar'}
Может кто-нибудь сообщить мне, как к тому, что означает, что "{for 'Foo::Bar'}"
часть имени?
Кроме того, кто-нибудь знает о какой-либо документации об этом, поэтому я могу читать, поскольку я ничего не могу найти.
Большое спасибо!
Вы не собираетесь найти это документально, это компилятор детали реализации, которые могут быть изменены. Класс может иметь более одного v-таблицы из-за множественного наследования. Постфикс гарантирует, что их символы уникальны. –