The problem is that in order to implement indexOf, QVector has to know how to compare Points for equality (otherwise how can it find the point in the vector). It uses operator== for this, but you haven't written operator== for class Point, so you get this error. Just write operator== for Point (and operator!= would be a good idea too).
bool operator==(const Point& x, const Point& y)
{
// your code here
}
bool operator!=(const Point& x, const Point& y)
{
return !(x == y);
}