请问c++这段代码中z=fun(y)怎么理解。

2024-12-05 00:26:55
推荐回答(1个)
回答1:

第一个1是 A y(x) 调用了构造函数A(CONST A &a){cout<<1<<" ";}
第二个1是在执行fun(y)时 其函数体执行了A(a) 产生了一个1。
产生2的原因是 operator= 重构了=运算符 在执行z=fun(y)时先按顺序执行了 fun(y)接下来执行重构了的 = 产生了 2;