map如何一个key存储多个值
时间: 2024-01-26 17:03:09 浏览: 19
在C++中,可以使用`std::map`中的`std::multimap`来实现一个key存储多个值的功能。`std::multimap`与`std::map`类似,但它允许多个元素拥有相同的键值。下面是一个示例:
```c++
#include <iostream>
#include <map>
int main()
{
std::multimap<int, std::string> myMap;
// 向multimap中添加数据
myMap.insert(std::make_pair(1, "value1"));
myMap.insert(std::make_pair(2, "value2"));
myMap.insert(std::make_pair(3, "value3"));
myMap.insert(std::make_pair(1, "value4")); // 注意这里添加了一个key为1的新值
// 遍历multimap中的数据
for (auto iter = myMap.begin(); iter != myMap.end(); ++iter)
{
std::cout << iter->first << " : " << iter->second << std::endl;
}
return 0;
}
```
输出结果为:
```
1 : value1
1 : value4
2 : value2
3 : value3
```
可以看到,key为1的值有两个,`std::multimap`可以存储多个值。