pair可以作为map的value么
时间: 2023-07-31 15:05:40 浏览: 44
是的,`std::pair` 可以作为 `std::map` 的 `value`。实际上,`std::pair` 是一个非常方便的结构,可以将两个不同类型的值组合在一起。在 `std::map` 中,通常情况下,`std::pair` 用来表示键值对,其中 `pair` 的第一个元素是键,第二个元素是值。例如:
```cpp
#include <iostream>
#include <map>
int main()
{
std::map<int, std::pair<std::string, double>> my_map;
my_map[1] = std::make_pair("apple", 1.23);
my_map[2] = std::make_pair("banana", 2.34);
my_map[3] = std::make_pair("cherry", 3.45);
for (const auto& item : my_map)
{
std::cout << item.first << ": " << item.second.first << ", " << item.second.second << std::endl;
}
return 0;
}
```
输出:
```
1: apple, 1.23
2: banana, 2.34
3: cherry, 3.45
```
在这个例子中,`std::map` 的键是 `int` 类型,值是 `std::pair<std::string, double>` 类型,其中 `std::pair` 的第一个元素是 `std::string` 类型的水果名称,第二个元素是 `double` 类型的价格。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)