标签:
构造函数与析构函数建立的分析:
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