Often times I find myself using std::pair to define logical groupings of two related quantities as function arguments/return values. Some examples: row/col, tag/value, etc.
You can use some standard utility templates that help define the relation operators.
#include
http://www.sgi.com/tech/stl/operators.html
The requirement for operator!= is that x == y is a valid expression
The requirement for operator> is that y < x is a valid expression
The requirement for operator<= is that y < x is a valid expression
The requirement for operator>= is that x < y is a valid expression
So basically it will automatically generate the other operators give < and == all you have to do is include