继承中的默认构造函数,构造链以及析构链


继承中的默认构造函数

1. 基类的无参构造函数

若基类ctor未被显式调用,基类的默认构造函数就会被调用(注意此例中的即继承关系是Circle类继承于Shape)

 

要考虑给基类提供默认构造函数啊 ,不然很容易出现错误!!!!很容易被顶啊

构造链和析构链

1. 构造函数链

构造类实例会沿着继承链调用所有的基类ctor

调用次序: base first, derive next (父先子后)

2. 析构函数链

dtor与ctor正好相反

调用次序: derive first, base next (子先父后)

 

如果类中含有内嵌对象呢,其顺序又当如何呢,构造时,内嵌对象只是比被嵌对象类优先一步,析构时相反,可以参考如下代码图片:

 

执行的结果如下:

 

 

能推算出上述结果,算是真正理解了吧

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值