Это было решение комитета, что imho была ошибкой. Это было исправлено для std :: unordered_map (в C ++ 11 ).
Использование std::equal
не является хорошим способом найти равенство неупорядоченных контейнеров. В конце концов, они могут быть не в том же порядке.
N3068 - это документ, который ввел сравнения равенства для неупорядоченных контейнеров. Объясняется мотивация и методика определения равенства.