#include?<iostream>
using?namespace?std;
class?point?
{?public?:
point(int?a)?{?x?=?a;?cout?<<?x?<<?endl;?}
point(point?&?p)?{?x?=?p.x;?cout?<<?x?<<?endl;?}
void?addx(int?a)?{?x?+=?a;?}
private?:
int?x;
};
int?main()?
{
point?p1(10),?p2(p1);
p2.addx(2);
point?p3?=?p2;
system("pause");
return?0;
}
結(jié)果是?10?10?12??為什么不是10?10?12?12
1 回答

onemoo
TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個(gè)贊
只有構(gòu)造函數(shù)里有輸出語(yǔ)句,你一共創(chuàng)建了p1 p2 p3這三個(gè)對(duì)象,當(dāng)然只會(huì)輸出三次?。?/p>
在構(gòu)造p1和p2時(shí)分別輸出10 10, 然后p2將自己的成員x加到12,最后構(gòu)造p3時(shí)輸出12。 沒(méi)錯(cuò)啊?!
- 1 回答
- 1 關(guān)注
- 1236 瀏覽
添加回答
舉報(bào)
0/150
提交
取消