c++面试题6
2014-04-10 21:36
197 查看
有关虚析构函数问题说明:
#include<iostream> using namespace std; class parent { public: parent(){} ~parent() { cout<<"do something in parent"<<endl; } }; class child : public parent { public: child(){} ~child() { cout<<"do something in child"<<endl; } }; int main() { parent* p = new child; //如果为加virtual说明析构函数只会调用父类的析构函数,会造成内存泄漏问题, delete p; //所以如果有继承关系应该将父类的析构函数加上virtual return 0; } //print:do something in parent