所以我寫了這個重載函數的分數類,它有變量num和den。C++重載操作符工作
fraction operator +(fraction & f1, fraction & f2)
{
fraction temp;
temp.num = (f1.num * f2.den) + (f1.den * f2.num );
temp.den = (f1.den * f2.den);
return temp;
}
如果我使用此代碼爲f1 = f1+f2
,它運行fine.But我想如果我嘗試用這種方式來使用它作爲f1 = f2+fraction(3,4)
,它顯示無效的操作數分數和分數。 任何人都可以識別這種錯誤和它爲什麼發生。提前致謝。
它會工作,如果它是f1 = f1 +分數(3,4)? – Yourfavouritenoob 2014-10-29 01:31:24
@Yourfavouritenoob是的。 – songyuanyao 2014-10-29 01:32:33
感謝兄弟,它像一條流淌的河流一樣工作......我可以問你爲什麼以及它是如何工作的? – Yourfavouritenoob 2014-10-29 01:37:13