一、整体代码
01.cpp
#include <iostream>
using namespace std;
class IDemo
{
public:
virtual ~IDemo() = 0;//纯虚析构函数
};
class Child : public IDemo
{
public:
~Child()
{
cout << "Child" <<endl;
}
};
IDemo::~IDemo()
{
cout << "IDemo" <<endl;
}
int main()
{
IDemo* demo = new Child;
delete demo;
return 0;
}
二、运行结果
Child
IDemo
三、解释
一旦声明了纯虚析构函数,那么该类为抽象类,不能生成该类对象,天生就是当爹的