簡體   English   中英

重載運算符+ = c ++時出錯

[英]Error while overloading operator += c++

我試圖在名為Movie的類上重載運算符+ =:

Movie& operator+=(const Movie& other)
{
 *this=*this+other;
 return*this;}

給我錯誤Movie.h:47:10:錯誤:使用“ Movie&Movie :: operator + =(const Movie&)”,我如何過載它?

盡管報告了問題,但是代碼在結構上是不正確的。 它在+ =操作中調用賦值運算符,這不是必需的,僅僅是性能上的拖累。 取而代之的是, operator +=應該正確編碼,並帶有對對象的修改,並且operator +用+ =表示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM