1
我可以看到std::__unordered_map
與__cache_hash_code=true
有很好的運行時性能提升。但它不適用於std::unordered_map
。 __cache_hash_code=true
已棄用?爲什麼設置__cache_hash_code只適用於std :: __ unordered_map?
我可以看到std::__unordered_map
與__cache_hash_code=true
有很好的運行時性能提升。但它不適用於std::unordered_map
。 __cache_hash_code=true
已棄用?爲什麼設置__cache_hash_code只適用於std :: __ unordered_map?
名稱中帶有雙下劃線(__
)的任何標識符都由實現保留,因此它是一個特定於實現的代碼片段,未來可能支持相同或不同的語義。
除非分析顯示哈希是程序中的重要瓶頸,否則只需使用標準容器來提高可維護性和可移植性。
'std :: unordered_map'支持自定義散列函子。如果分析表明需要緩存,則可以在自定義哈希函數中實現該緩存。這可以非常便攜。 – MSalters 2011-12-29 09:31:28