In C++ do you need to overload operator== in both directions?
(C++20 onward) With the acceptance of p1185 into C++20, you don’t need to provide more than one overload. The paper made these changes (among others) to the standard: [over.match.oper] 3.4 – […] For the != operator ([expr.eq]), the rewritten candidates include all member, non-member, and built-in candidates for the operator == for which the rewritten …