请简述虚析构函数的作用!
参考答案
结论:基类析构函数声明为virtual,确保delete基类指针时正确析构整个派生类对象。要点:1.若基类析构非虚,通过Base*删除Derived仅调用~Base,派生部分资源泄漏;2.虚析构加入虚表,动态绑定到实际对象类型,先调派生析构再调基类析构;3.示例:Base* p=new Derived(); delete p; 虚析构时执行~Derived()然后~Base();4.准则:类若含虚函数或可能被继承,析构应虚,防止资源泄漏。
题目整理自公开面经,答案由校招宝自研生成,仅供参考