I think it was probably because they were trying to make std::set
and std::multiset
as similar as possible. (And obviously count
has a perfectly sensible meaning for std::multiset
.)
Personally I think this was a mistake.
It doesn’t look quite so bad if you pretend that count
is just a misspelling of contains
and write the test as:
if (myset.count(element))
...
It’s still a shame though.