[第二章]c++学习笔记6(复制构造函数在各个编译器中的表现)

visual studio结果

dev c++结果

两者的输出有所不同
原因:dev c++编译对这个过程进行了优化,因为直接return对象给a,为节省时间所以不生成临时对象,所以结果为10.
注:一般情况下此优化并无问题,因一般复制函数很少会如图中所示对临时对象进行操作。

猜你喜欢

转载自www.cnblogs.com/lamia76/p/12319431.html