Could anybody explain me what is the difference between overload == and <?
==
<
For example, if I use a map:
map
Because std::map has such behaviour, it uses std::less functor or your functor for many operations.
std::map
std::less
Behaviour can be different, but usual checks that lhs is less than rhs.