Ano*_*non 9 c++ gcc g++ vtable
可能重复:
了解vtable条目
使用g ++版本4.6.3,64位机器.我知道编译器可以随心所欲地实现虚函数.我想知道这里发生了什么.
我的课:
#include <iostream>
class test
{
public:
virtual void func(){std::cout<<"in class test";}
};
int main()
{
test obj;
obj.func();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
查看编译器生成的虚拟表,
Vtable for test
test::_ZTV4test: 3u entries
0 (int (*)(...))0 (<---- what is this? )
8 (int (*)(...))(& _ZTI4test)
16 (int (*)(...))test::func
Run Code Online (Sandbox Code Playgroud)
在偏移8处,它是RTTI
在偏移16处,它是虚函数的入口.
我的问题是为什么在偏移0处有空的条目,或者换句话说第一次进入的目的是什么?
PS我认为这可能与对齐有关,但后来我添加了更多的虚函数,但RTTI条目仍然是偏移8.
| 归档时间: |
|
| 查看次数: |
2346 次 |
| 最近记录: |