C++中的 虚析构 与 纯虚析构

简介: C++中的 虚析构 与 纯虚析构

1.虚析构 与 纯虚析构 在日常编写程序中并不多见。那么什么时候会用到 虚析构 与 纯虚析构 呢?

子类的某一些属性开辟到了堆区的时候,即用到了指针和new。

2.虚析构的实现过程如下:

输出结果如下:

若使用虚析构,则要在子类中进行类似于重写的操作,但实际上并不是重写,因为类名不同

3.纯虚析构的实现过程如下:

纯虚析构不仅要像纯虚函数那样在类内进行声明等于0

还会多出来一步操作--就是在类外进行定义  如: Animal::~Animal(){};

其中第一个Animal是类名,表明作用域

输出结果为:

相关文章
C4.
|
6月前
|
C++
C++class的构造与析构
C++class的构造与析构
C4.
76 0
|
编译器 程序员 C++
21 C++ - 对象的构造和析构
21 C++ - 对象的构造和析构
68 0
|
1月前
|
C++
C++番外篇——对于继承中子类与父类对象同时定义其析构顺序的探究
C++番外篇——对于继承中子类与父类对象同时定义其析构顺序的探究
51 1
|
6月前
|
设计模式 编译器 C++
C++中的构造方法和析构方法详解
C++中的构造方法和析构方法详解
42 0
|
3月前
|
JavaScript Java C语言
面向对象编程(C++篇3)——析构
面向对象编程(C++篇3)——析构
29 2
|
5月前
|
编译器 C++
《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记
《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记
|
编译器 C++
44 C++ - 继承中的构造和析构
44 C++ - 继承中的构造和析构
48 0
|
6月前
|
C++
3. C++构造和析构
3. C++构造和析构
46 0
|
6月前
|
Java 程序员 编译器
【C/C++析构函数 】C++中的“垃圾回收”机制_析构
【C/C++析构函数 】C++中的“垃圾回收”机制_析构
79 0
|
算法 C语言 C++
C++构造和析构
C++构造和析构