1.虚析构 与 纯虚析构 在日常编写程序中并不多见。那么什么时候会用到 虚析构 与 纯虚析构 呢?
子类的某一些属性开辟到了堆区的时候,即用到了指针和new。
2.虚析构的实现过程如下:
输出结果如下:
若使用虚析构,则要在子类中进行类似于重写的操作,但实际上并不是重写,因为类名不同
3.纯虚析构的实现过程如下:
纯虚析构不仅要像纯虚函数那样在类内进行声明等于0
还会多出来一步操作--就是在类外进行定义 如: Animal::~Animal(){};
其中第一个Animal是类名,表明作用域
输出结果为: