关注公众号

关注公众号

手机扫码查看

手机查看

喜欢作者

打赏方式

微信支付微信支付
支付宝支付支付宝支付
×

C++之继承中的构造和析构学习总结(二)

2020.9.29

代码实践:

image.png

image.png

输出结果:

image.png

注解:我们可以看到,先定义了一个Child对象,然后最先访问Object带参构造函数,然后再是Parent带参构造函数(说白了就是父类先触发),然后在子类Child中又包含了组合关系(也就是客人),然后Object类中的带参构造函数,最后再触发自身的带参构造函数。

二、子类对象的析构

1、析构函数的调用顺序与构造函数相反

(1)执行自身的析构函数

(2)执行成员变量的析构函数

(3)执行父类的析构函数

代码实践:

image.png

image.png

image.png

输出结果:

image.png

三、总结:

子类对象在创建时需要调用父类构造函数进行初始化

先执行父类构造函数然后执行成员的构造函数

父类构造函数显示调用需要在初始化列表中进行

子类对象在销毁时需要调用父类析构函数进行清理

析构顺序与构造顺序对称相反


推荐
热点排行
一周推荐
关闭