I recently discovered that the implementation of the hash map in c++ will be called unordered_map. When I looked up why they weren't just using hash_map, I discovered that apparently there are compatiblity issues with the implementation of hash_map that unordered_map resolves(http://en.wikipedia.org/wiki/Unordered_map_%28C%2B%2B%29). The wiki page doesn't give much more information so I wondering if anyone knew some of the issues with hash_map that unordered_map resolves
Since there was no hash table defined in the C++ standard library, different implementors of the standard libraries would provide a non-standard hash table often named 'hash_map'. Because these implementations were not against a standard they all had subtle differences in functionality and performance guarantees.
Starting with C++0x a hash table implementation has been added to the C++ standard library standard. It was decided to use an alternate name for the class to prevent collisions with these non-standard implementations and to prevent inadvertent use of the new class by developers who had 'hash_table' in their code.
The chosen alternate name is 'unordered_map' which really is more descriptive as it hints at the class's map interface and the unordered nature of it's elements.