Search code examples
c++comparisonoperator-keywordequivalence

Test for equivalence with only less than operator?


Say I have two literals of type 'T'. I'd like to test if they were equivalent, but type 'T' only has the "less than" operator implemented. How would I be able to test this in C++?


Solution

  • You can emulate the equality operator with a couple of "less than" comparisons and a negation:

    if (!(t1 < t2) && !(t2 < t1)) {
        printf ("t1 and t2 are equivalent");
    }