首页 > 代码库 > 虚析构函数的必要性

虚析构函数的必要性

#include"iostream"

using namespace std;

class base1{

public:

base1(){

cout << "父类构造函数" << endl;

}

~base1(){

cout << "父类的析构函数" << endl;

}


virtual void print(){

cout << "virtual base1.print();" << endl;

}

};

class derived1 :public base1{

int b;

public:

derived1(){

cout << "子类构造函数" << endl;

}

~derived1(){

cout << "子类的析构函数" << endl;

}

virtual void print(int a = 0){

cout << "virtual derived.print();" << endl;

}


};

void f(){

base1 *d=new derived1;

delete d;

}

int main(){

f();

system("pause");

return 0;

}


虚析构函数的必要性