Я читаю 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&);
, затем автор объяснил:
Эта разница соответствует возвращаемым типам этих операторов при применении к арифметическим типам. :Сложение дает rvalue, а составное присваивание возвращает ссылку на левый -операнд.
Я не совсем уверен насчёт "compound assignment returns a reference to the left-hand operand
". Может ли кто-нибудь подробнее рассказать об этом и о соответствующих вещах, пожалуйста?