unordered_map 确实挺慢的。你可以试试 Qt 里面的 QHash。
我测试的结果是默认条件下 QHash 比 unordered_map 快很多。
测试的函数和结果我都放附件里了。
unordered_map 可以做的更快,但是需要自己提供合适的 hash 函数和 allocator。
【 在 foliver 的大作中提到: 】
: 起因是我有一个python运算程序,运算太慢。用C#实现后,效率大幅提升。后来想用c++改写应该更快些, 发现竟然慢很多。不能忍。
: 原因程序需要用到大容量字典。百千万级别。
: 对比了下c#和C++(unorder map):
: ...................
--
FROM 171.88.28.*
附件(2KB) test_dict.txt