虚函数表的问题
在VC的调试窗口中,为什么在子类的虚函数表中只能看到从父类继承的虚函数?为什么看不到它自己的虚函数?谢谢!
[解决办法]
这完全是编译器的显示问题,你完全可以通过指针操作把虚表中的每一项取出来看看。
Derived *p = new Derived()
int* addr = reinterpret_cast <int*> (p);
int* vptr = reinterpret_cast <int*> (*addr);
//取虚表中的各项:
int* func1 = reinterpret_cast <int*> (vptr[0]);
int* func2 = reinterpret_cast <int*> (vptr[1]);
然后在DEBUG查看func1,func2的值,我当时碰到这个问题就这么干的,有点麻烦,也许有更好的办法把。