虚析构函数:
为了能够正确的调用对象的析构函数,一般要求具有层次结构的顶级类定义其析构函数为虚函数。因为在delete一个抽象类指针时候,必须要通过虚函数找到真正的析构函数。
class Base
{
public:
Base(){}
virtual ~Base(){}
};
class Derived: public Base
{
public:
Derived(){};
~Derived(){};
}
void foo()
{
Base *pb;
pb = new Derived;
delete pb;
}
算了 人家写的太好了 直接贴上URL
http://blog.jobbole.com/108492/点击打开链接
本文详细解释了虚析构函数的概念及其在C++中的使用场景。重点介绍了如何通过虚析构函数确保派生类对象被正确销毁的过程,尤其是在通过基类指针删除派生类对象时的重要性。
107

被折叠的 条评论
为什么被折叠?



