小编use*_*057的帖子

什么时候为对象设置虚拟表指针(在C++中)?

我知道对于任何具有虚函数的类或者从具有虚函数的类派生的类,编译器会做两件事.首先,它为该类创建一个虚拟表,然后,它将虚拟指针(vptr)放在该对象的基础部分中.在运行时,此vptr被分配并在对象实例化时开始指向正确的vtable.

我的问题是,在实例化过程中,这个vptr的确切位置是什么?这个vptr的赋值是否发生在构造函数之前/之后的对象的构造函数中?

c++ constructor virtual-functions vtable vptr

8
推荐指数
2
解决办法
6494
查看次数

标签 统计

c++ ×1

constructor ×1

virtual-functions ×1

vptr ×1

vtable ×1