C+中的纯虚拟析构函数

C+中的纯虚拟析构函数

写:

class A {public:
    virtual ~A() = 0;};

抽象基类?

至少这是在MSVC中编译的.。它会在运行时崩溃吗?


冉冉说
浏览 396回答 3
3回答

慕斯709654

私有析构函数:当您创建派生类的对象时,它们会给您一个错误-否则。不过,可能会出现诊断。12.4析构函数6析构函数可以声明为虚拟(10.3)或纯虚拟(10.4);如果在程序中创建了该类的任何对象或任何派生类,则应定义析构函数。具有纯虚拟析构函数的类是一个抽象类。注意:10.4抽象类2只有在调用限定id语法(5.1)或(12.4)时才需要定义纯虚函数。[注:函数声明不能同时提供纯说明符和定义尾注释]直接摘自草案:struct C {    virtual void f() = 0 { }; // ill-formed};
打开App,查看更多内容
随时随地看视频慕课网APP