We can pass a function as <
(less) operator to STL data structures such as set
, multiset
, map
, priority_queue
, ...
Is there a problem if our function acts like <=
(less_equal)?
Yes, there is a problem.
Formally, the comparison function must define a strict weak ordering, and <=
does not do that.
more specifically, the <
is also used to determine equivalence (x
and y
are equivalent iff !(x < y) && !(y < x)
). This does not hold true for <=
(using that operator would have your set believe that objects are never equivalent)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With