我想创建一个类似于缓存的集合关联结构(http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Memory/set.html)。有一些集合,每个集合都包含一些方法。每种方式都有一些字段,但是集合中的所有方式都有唯一的字段(标签)。
我知道std::multiset
哪个可以用于我的目的。还有其他选择吗?任何想法?
我想创建一个类似于缓存的集合关联结构(http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Memory/set.html)。有一些集合,每个集合都包含一些方法。每种方式都有一些字段,但是集合中的所有方式都有唯一的字段(标签)。
我知道std::multiset
哪个可以用于我的目的。还有其他选择吗?任何想法?
对于缓存,我通常使用 std::map、std::multimap 或它们的哈希等效项。事实上 hash_map 通常表现得更好一点,所以这里可能是更好的选择。在 c++11 中,hash_map 被称为unordered_map,现在是标准的一部分,所以我建议你使用这个。它还有一个名为unordered_multimap的多版本。如果 c++11 不是一个选项,则可以在 boost 中找到相同的容器。