MSVS有一个很好的功能,当观察指向接口的指针时,它会显示真实的对象。
例如struct IIntf1 {}
struct IIntf2 {}
class CIntf1: public IIntf1 {}
class CIntf2: public IIntf2, public CIntf1 {}
IIntf1 *p = new CIntf2();
MSVS 将显示 p 实际上是 CIntf2,它是 IIntf1 及其所有成员,它甚至会在那里显示多个嵌套类(p 是 C/IIntf1 等)。
在Linux下,gdb和/或Eclipse CDT有这样的东西吗?
在 gdb 中尝试set print object on
。 (如果您希望打印对象具有更多结构,也可以尝试set print pretty
。