![]() ![]() |
||
Bjarne:为何析构函数默认不是virtual | ||
作者:佚名 文章来源:不详 点击数 更新时间:2008/5/12 14:49:40 文章录入:杜斌 责任编辑:杜斌 | ||
|
||
那么什么时候才应该将析构函数定义为虚拟呢?当类至少拥有一个虚拟函数时。拥有虚拟函数意味着一个类是派生类的接口,在这种情况下,一个派生类的对象可能通过一个基类指针来销毁。例如:
如果基类的析构函数不是虚拟的,那么派生类的析构函数将不会被调用——这可能产生糟糕的结果,例如派生类的资源不会被释放。 |
||
![]() ![]() |