虚析构函数
来源:互联网 发布:jsp中引入js文件 编辑:程序博客网 时间:2024/06/01 11:30
看MFC CDialog和CWnd你会发现它的析构函数全部都是虚函数.这是为啥呢? 有啥好处呢?
直接搬网上的结论过来了,有点道理
lass ClxBase
{
public:
ClxBase() {};
virtual ~ClxBase() {};
virtual void DoSomething() { cout << "Do something in class ClxBase!" << endl; };
};
class ClxDerived : public ClxBase
{
public:
ClxDerived() {};
~ClxDerived() { cout << "Output from the destructor of class ClxDerived!" << endl; };
void DoSomething() { cout << "Do something in class ClxDerived!" << endl; };
};
{
public:
ClxBase() {};
virtual ~ClxBase() {};
virtual void DoSomething() { cout << "Do something in class ClxBase!" << endl; };
};
class ClxDerived : public ClxBase
{
public:
ClxDerived() {};
~ClxDerived() { cout << "Output from the destructor of class ClxDerived!" << endl; };
void DoSomething() { cout << "Do something in class ClxDerived!" << endl; };
};
代码
ClxBase *pTest = new ClxDerived;
pTest->DoSomething();
delete pTest;
pTest->DoSomething();
delete pTest;
在这种情况下,保证ClxDerived的析构函数也能够被执行到.
- 虚析构函数、纯虚析构函数
- 虚析构函数,纯虚析构函数~~~
- 构造函数 虚函数 虚析构函数
- 虚析构函数、纯虚析构函数、虚构造函数
- 纯虚函数、虚函数、虚析构函数
- 虚析构函数、纯虚析构函数、虚构造函数
- 虚函数,虚析构函数,虚函数表
- 虚析构函数、纯虚析构函数、虚构造函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- 虚析构函数
- ON_NOTIFY and WM_NOTIFY Messages
- VB.net+工厂方法模式+思考
- 自学Linux--02/06/10
- RICHEDIT EM_SETTEXTEX & EM_REPLACESEL
- haode
- 虚析构函数
- WM_DESTROY & WM_NCDESTROY
- AFX_MANAGE_STATE
- 第一篇博客
- so...
- Windows与VMware下的Linux文件共享方式总结
- 成功必须经过六项修炼
- 想学日语的或是正在学日语的不看后悔死你~超全的有关日语学习的网站地址!!
- lwip -telnet移植