Relational operators are those operators which compares two operand, like operators (==, <, >, <=, >=) compares C++ data types. C++ allows us to specify these operators with a special meaning for a class object.

In the example below, relational operators < and > are overloaded. When it is applied with point objects, it compares its distance from origin and returns true or false based on the comparison result. For example:

• (10, 15) > (5, 25) will compare 10² + 15² > 5² + 25² which is equivalent to 325 > 650, hence returns false.
• (10, 15) < (12, 14) will compare 10² + 15² < 12² + 14² which is equivalent to 325 < 340, hence returns true.

Note: In this example, cmath function hypot is used to calculate distance of a point from the origin.

```#include <iostream>
#include <cmath>
using namespace std;

class point {
public:
int x, y;

//class constructor
point(){}
point(int x, int y) {
this->x = x;
this->y = y;
}
};

string operator< (const point p1, const point p2) {
float d1 = hypot(p1.x, p1.y);
float d2 = hypot(p2.x, p2.y);
return d1 < d2? "true" : "false";
}

string operator> (const point p1, const point p2) {
float d1 = hypot(p1.x, p1.y);
float d2 = hypot(p2.x, p2.y);
return d1 > d2? "true" : "false";
}

int main () {
point p1(10, 15), p2(5, 25), p3(12, 14);

cout<<"(p1 > p2) returns: "<<(p1 > p2)<<"\n";
cout<<"(p1 < p3) returns: "<<(p1 < p3)<<"\n";
return 0;
}
```

The output of the above code will be:

```(p1 > p2) returns: false
(p1 < p3) returns: true
```