阅读下面程序,写出运行结果,分析具体原因
阅读下面程序,写出运行结果,分析具体原因
阅读下面程序,写出运行结果,分析具体原因
!!
A的三个变量定义,调用有参构造函数,无任何输出
B的一个变量定义,参数传递会调用三个A参数的构造函数,会调用三次A的拷贝构造函数,输出三行copy ...... A;然后初始化列表部分又会调用三次A的拷贝构造函数,输出三行copy...A
B的一个变量定义,调用B的拷贝构造函数,输出一行copy .... B
B有两个变量,所以析构两次,没有B的中间变量
A有三个变量x,y,z,在构造B变量时,传递给B的构造函数产生了三个临时A变量,然后赋值给B的三个A类成员变量,因此共产生九个A的变量,最终析构会执行九次