- 应该为多态基类声明虚析构器。一旦一个类包含虚函数,它就应该包含一个虚析构器。
- 如果一个类不用作基类或者不需具有多态性,便不应该为它声明虚析构器。
这样做是为了当用一个基类的指针删除一个派生类的对象时,派生类的析构函数会被调用
在类的继承中,如果有基类指针指向派生类,那么用基类指针delete时,如果不定义成虚函数,派生类中派生的那部分无法析构。
这样做是为了当用一个基类的指针删除一个派生类的对象时,派生类的析构函数会被调用
在类的继承中,如果有基类指针指向派生类,那么用基类指针delete时,如果不定义成虚函数,派生类中派生的那部分无法析构。
上一篇:引用传递和指针传递
<br />一. 虚析构函数<br />我们知道,为了能够正确的调用对象的析构函数,一般要求具有层次结构的顶级类定义其析构函数为虚函数。因为在delete一个抽象类指针时候
函数声明
众所周知,我们一般在写程序的时候,一般会把函数声明放在头文件(.h)里面,而会把定义放在.cpp文件里面。
构造函数不能是虚的。只能有虚的析构函数
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M