私は C++ Primer を読んでいます。オーバーロードされた操作の章で、著者は例を挙げました:
// member binary operator: left-hand operand bound to implicit this pointer
Sales_item& Sales_item::operator+=(const Sales_item&);
// nonmember binary operator: must declare a parameter for each operand
Sales_item operator+(const Sales_item&, const Sales_item&);
次に、著者は次のように説明しました。
この違いは、算術型に適用された場合のこれらの演算子の戻り値の型と一致します。加算は右辺値を生成し、複合代入は左側のオペランドへの参照を返します。
「 」についてはよくわかりませんcompound assignment returns a reference to the left-hand operand
。誰かがそれと関連することについて詳しく説明できますか?