基类的构造函数、析构函数、赋值函数都不能被派生类继承。
#include <iostream>
using namespace std;

class A
{
public:
A(){cout<<"A constructor"<<endl;}
~A(){cout<<"A desstructor"<<endl;}
};

class B : public A
{
public:
B(){cout<<"B constructor"<<endl;}
~B(){cout<<"B desstructor"<<endl;}
};

int main(){
A *pa = new B;
delete pa;
return 0;
}
//输出
//A constructor
//B constructor
//A desstructor
父类的析构函数没有声明为virtual,故子类的析构函数不会被调用到
若~A为virtual的,则~B自动为virtual


























父类的析构函数没有声明为virtual,故子类的析构函数不会被调用到
若~A为virtual的,则~B自动为virtual