已知stdmap的 key ,如何找出值
时间: 2024-09-24 19:12:40 AIGC 浏览: 103
在C++标准库中的`std::map`容器中,如果你想根据键(key)找到对应的值(value),你可以通过迭代器进行查找。`std::map`使用关联容器模板,它的元素是成对存储的,每个键值对由一个`pair`组成,键作为第一个元素,值作为第二个元素。
下面是一个简单的示例:
```cpp
#include <map>
#include <iostream>
int main() {
std::map<std::string, int> myMap; // 创建一个字符串到整数的映射
myMap["apple"] = 5;
myMap["banana"] = 7;
myMap["cherry"] = 3;
// 使用find()函数查找key
auto it = myMap.find("banana"); // 返回一个指向键值对的迭代器
if (it != myMap.end()) { // 检查键是否存在
int value = it->second; // 如果存在,获取对应的值
std::cout << "Value for 'banana': " << value << std::endl;
} else {
std::cout << "Key not found!" << std::endl;
}
return 0;
}
```
在这个例子中,`find()`函数如果找到了匹配的键,返回一个指向该键值对的迭代器;如果没有找到,则返回`end()`。然后你可以通过`->`操作符访问迭代器的值部分(`second`)。
阅读全文
相关推荐


















