C++ 只声明该类为抽象类

一、整体代码

   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


三、解释

       一旦声明了纯虚析构函数,那么该类为抽象类,不能生成该类对象,天生就是当爹的

你可能感兴趣的:(C++ 只声明该类为抽象类)