struct Vec{
int x;
int y;
Vec operator+(const Vec &v){
x+=v.x; y+=v.y;
return *this;
}
Vec Vec::operator+=(const Vec &v){
x+=v.x; y+=v.y;
return *this;
}
};
ostream& operator<<(ostream &out, const Vec &v){
return out << "x : " << v.x << "\ny : " << v.y << "\n";
}
my + and += operator have same behavior how can I avoid redefinition?