Following the advice given in this answer, I have overloaded the + operator in my simple Point class as follows (the += overload works fine).
Point operator+ (Point p1, const Point& p2)
{
    return std::move(p1 += p2);
}
But I get an error saying
overloaded 'operator+' must be a unary or binary operator (has 3 parameters)
What is wrong?
 
     
     
     
     
    