码迷,mamicode.com
首页 > 其他好文 > 详细

构造与析构

时间:2015-07-27 22:43:31      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:

构造函数与析构函数建立的分析:

1、以引用作为接收参数(形参)时,不构造临时对象

 技术分享

 技术分享

结果为:

 技术分享

 

分析:调用Base的构造函数建立base1,调用Base的构造函数建立base2,构造t1对象时应先构造好其数据成员,由于以引用接收,则不会构造临时对象,所以调用Test的构造函数构造t1 对象,同理,构造t2对象;然后进行析构t2,析构t1.

 技术分享技术分享

 技术分享

分析:调用Base的构造函数建立base1,调用Base的构造函数建立base2

构造Test 类的t1对象时,注意其数据成员是Base类的对象。所以先要构造好base对象。

由于不是以引用接收的,则会产生临时对象,则调用se的拷贝构造,再对数据对象进行初始化时,又进行调用Base的拷贝构造,接着调用Test的构造,然后调用Base的析构将临时对象析构,同理构造t2对象,最后开始析构t2,析构其成员对象base调用Base的析构,析构t1,析构其成员对象base调用Base的析构,接着析构base2,base1.

注意:先构造的最后析构。

 

构造与析构

标签:

原文地址:http://www.cnblogs.com/Lotusbleu/p/4681396.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!