亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

運算符重載


Coordinate operator+(Coordinate c1,Coordinate c2)//我已經在類里聲明友元了

//friend Coordinate operator+( Coordinate &c1, Coordinate &c2);

{
?? Coordinate temp(0,0);
?? temp.m_iX=c1.m_iX+c2.m_iX;
?? temp.m_iY=c1.m_iY+c2.m_iY;
?? return temp;//編譯器提示我m_iX和m_iY是私有變量? 不能訪問
}

正在回答

1 回答

//friend Coordinate operator+( Coordinate &c1, Coordinate &c2);

聲明里參數是引用類型的


Coordinate operator+(Coordinate c1,Coordinate c2)

定義里面卻不是,編譯器會認為這是兩個不一樣的函數的


Coordinate?operator+(Coordinate?&c1,Coordinate?&c2)
//friend?Coordinate?operator+(?Coordinate?&c1,?Coordinate?&c2);
{
???Coordinate?temp(0,0);
???temp.m_iX=c1.m_iX+c2.m_iX;
???temp.m_iY=c1.m_iY+c2.m_iY;
???return?temp;//編譯器提示我m_iX和m_iY是私有變量??不能訪問
}

這樣試一下。。

0 回復 有任何疑惑可以回復我~
#1

亂舞的旋律 提問者

試過了
2016-04-21 回復 有任何疑惑可以回復我~
#2

亂舞的旋律 提問者

算了,后來改著改著就對了,不清楚哪里細節錯了
2016-04-21 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之模板篇
  • 參與學習       91140    人
  • 解答問題       325    個

本C++教程力求即學即會,所有知識以實踐方式講解到操作層面

進入課程

運算符重載

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號