1

我需要存储一些这样的数字

key => (four integers, between 0 to 30 (maxmimum), -1 means NULL)
125 => (1,3,5,20)
80 => (4,2,-1,-1)
20 => (10,12,21,3)
...

我需要最快的随机访问。实际上,它将成为我的应用程序的数据表。我想将这些值存储在标头中,并在需要的地方调用它们。我主要做脚本(PHP/Python),我有数组/字典。但是 C++ 呢?

到目前为止,我已经找到了 map 和 unordered_map (似乎前者更适合随机访问)。

4

1 回答 1

2

您可以使用 astd::unordered_map来保存它,即:std::unordered_map<int, std::array<int, 4>>

的使用unordered_map将通过密钥提供更快的访问。从此文档

unordered_map 容器比 map 容器更快地通过它们的键访问单个元素,尽管它们通常对于通过其元素的子集进行范围迭代的效率较低。

于 2013-10-29T17:24:54.780 回答