9
Say I had class/struct Foo
struct Foo {
int a, b;
bool operator< (Foo const& r){
return a < r.a;
}
bool operator== (Foo const& r){
return a==r.a&&b==r.b;
}
};
Foo bar = { 5, 1 };
Foo baz = { 5, 2 };
Now bar == baz is false but so are bar < baz and baz < bar.
Note that here the ordering completely ignores b but b is part of the equality relation.