previous | start | next

## Operator Overloading

- Some operators must access the internals of the class and must be member functions.
- Member functions use the implicit parameter as the left operand.
- A non member operator:

  >     bool operator==(Iterator a, Iterator b)

- The same operator as a member function:

  >     bool Iterator::operator==(Iterator b) const

- If the operator is unary, then the member function has no explicit parameter

  >     string Iterator::operator*() const

previous | start | next