提问1
能在 构造函数里面调用 虚函数吗?
调用的 是这个类自己的 虚函数吗?
这个问题 等价于 虚函数表什么时候形成的?
回答1
答:在构造函数里面 可以调用虚函数哈 不过是父类的 子类对象还没有创建完成
所以 尽量不要在 构造里面调用 virtual 这也是 C++ Core Guild line 的建议
提问2
为啥要在 析构前面加 virtual
回答2
答:不加virtual会内存泄露
追问问题2
是谁泄露 父类还是子类
回答3
子类内存泄露!
父类的析构函数不加virtual,
系统就把它看成一个普通的成员函数
如果没有 virtual 就调用的 父类的
可以这么理解,系统内核我也没看过