я хочу перегружать оператор + для работы как на side.When я использовать оператор + я хочу, чтобы подтолкнуть элемент в вектор класса .Здесь мой код:оператор + перегрузки левый и правый
template<typename TElement>
class grades {
private:
vector<TElement> v;
public:
grades& operator+(const int& a) {
v.push_back(a);
return *this;
}
grades& operator=(const grades& g) {
v = g.v;
return *this;
}
friend grades& operator+(const int& a,const grades& g) {
//here i get some errors if i put my code
return *this;
}
};
int main() {
grades<int> myg;
myg = 10 + myg; // this operation i want
myg = myg + 9; //this work
return 0;
}
'' оператор + не должен изменять либо из операндов. Он должен возвращать только что созданный объект, представляющий их сумму (что бы это ни значило для вашего типа). Вместо этого рассмотрим 'operator + ='. –
В чем вопрос? Вы забыли спросить :) –