友元函數成員函數運算符重載
功能上沒有區別,有時將二元運算符重載成友元函數比成員函數更里靈活,例如:
c2(復數)等於1(int)+c1(復數)
c2 = 1 + c1;
如果用“+”成員函數重載,編譯會報錯
編譯器會將右邊式子解釋為
1.operator + (c2);
1是int型數據不能進行“.”操作,用友元函數重載就不會出現這個問題
operator + (1,c1)
友元函數成員函數運算符重載
功能上沒有區別,有時將二元運算符重載成友元函數比成員函數更里靈活,例如:
c2(復數)等於1(int)+c1(復數)
c2 = 1 + c1;
如果用“+”成員函數重載,編譯會報錯
編譯器會將右邊式子解釋為
1.operator + (c2);
1是int型數據不能進行“.”操作,用友元函數重載就不會出現這個問題
operator + (1,c1)
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。