虚函数相应一个指向vtable虚函数表的指针,但是这个指向vtable的指针事实上是存放在对象的内存空间空的。如果构造函数是虚的,就需要通过vtable来调用,但是这个对象还没有被实例化,也就是说内存空间还没有,怎么能找到vtable呢?所以构造函数不可能是虚函数。
为什么构造函数不能是虚函数?
最新推荐文章于 2024-06-20 21:47:23 发布
虚函数相应一个指向vtable虚函数表的指针,但是这个指向vtable的指针事实上是存放在对象的内存空间空的。如果构造函数是虚的,就需要通过vtable来调用,但是这个对象还没有被实例化,也就是说内存空间还没有,怎么能找到vtable呢?所以构造函数不可能是虚函数。