为什么set __cache_hash_code仅对std :: __ unordered_map可用?

时间:2011-12-29 05:02:41

标签: c++ hash c++11

我可以看到std::__unordered_map __cache_hash_code=true具有出色的运行时性能提升。但是std::unordered_map无法使用它。是否已弃用__cache_hash_code=true

1 个答案:

答案 0 :(得分:2)

名称中带有双下划线(__)的任何标识符都由实现保留,因此它是一个特定于实现的代码段,将来可能会或可能不会支持相同或不同的语义。

除非分析显示散列是程序中的一个重要瓶颈,否则只需使用标准容器来帮助维护和可移植性。