请在 下方输入 要搜索的题目:

析构函数为什么定义为虚函数。(4分)

析构函数为什么定义为虚函数。(4分)

发布时间:2024-12-24 05:04:40
推荐参考答案 ( 由 专技宝 官方老师解答 )
答案:答:如果一个类不用作基类或者不需具有多态性,便不应该为它声明虚的。析构函数执行时先调用派生类的析构函数,其次才调用基类的析构函数。如果析构函数不是虚函数,而程序执行时又要通过基类的指针去销毁派生类的动态对象,那么用delete销毁对象时,只调用了基类的析构函数,未调用派生类的析构函数。这样会造成销毁对象不完全,造成内存泄露。
专业技术学习
专业技术学习