编译器如何知道哪个vfptr表属于每个类?

时间:2019-05-14 14:42:38

标签: c++ compilation

我想知道(如果有办法)知道编译器如何将vfptr表映射到类。

我正在用windbg查看转储文件,我想知道是否有一种方法可以知道对象类型。 当我使用local进行监视时,编译器会知道对象的类型。

我想知道如何根据vfptr表确定对象类型。

如果我有vfprt表的地址,有一种方法可以知道什么是对象类型?编译器怎么知道?映射如何工作?

谢谢

编辑: 我会尝试重新回答这个问题。 我正在编写windbg dll。

在代码中,我有一个对象列表,但是每个对象可以是从对象类继承的不同类。 当我用windbg查看转储文件时,我可以在本地看到vfptr和类的类型。 使用我的dll,我只能访问内存,但是我无法像windbg调试器那样获取类的值,我猜编译器作为内存中的一部分,他可以进行映射或类似的操作,因为windbg知道怎么做。

是否只有通过访问转储文件中的程序存储器才能知道对象的确切类型?有一种方法可以使我的dll与windbg一起工作吗? 谢谢

0 个答案:

没有答案