10.11 Operators as Member vs. Non-Member Functions
Whether an operator function is implemented as a member function or as a non-member function, the operator is still used the same way in expressions. So which is best?
When an operator function is implemented as a member function, the leftmost (or only) operand must be an object (or a reference to an object) of the operator’s class. If the left operand must be an object of a different class or a fundamental type, this operator function must be implemented as a non-member function (as we did in Section 10.5 when overloading <<
and >>
as the stream insertion and stream extraction operators, respectively). A non-member operator function can be made a friend
of a class if that function must access ...
Get C++ How to Program, 10/e now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.