如果我们可以创建向量图或集合图,我不明白为什么存在多图。对我来说,唯一的区别是:
- 在 multimap 中使用
equal_range
来获取键的元素,在向量的映射中,我们只需使用[]
运算符并拥有元素向量。 multimap.insert(make_pair(key,value))
在 multimap 中用于添加元素和map_of_vectors[key].push_back(value)
在向量图中使用。
那么为什么要使用多图呢?对我来说,最好有一个向量而不是两个迭代器来获取键的所有值。
这个问题也适用于向量的 unordered_map 和 unordered_multimap。