c++map的find函数
时间: 2024-09-22 13:03:31 浏览: 54
C++中的map是一种关联式容器,它将键映射到值。 find函数是map容器中的一个成员函数,用于在map中查找指定键所对应的值。当在map中找到指定键时,它会返回指向该键所对应的值的迭代器;否则,返回一个指向map末尾的迭代器。
以下是find函数的语法:
```
iterator map_name.find(key_value);
const_iterator map_name.find(key_value) const;
```
其中,map_name表示map容器的名称,key_value表示要查找的键值。find函数有两个重载形式,分别返回迭代器和const_iterator类型。
如果需要判断某个键是否在map中存在,可以通过判断find函数返回的迭代器是否等于map的end()迭代器来实现。如果等于end()迭代器,则表示map中不存在该键。
下面是一个简单的示例代码:
```c++
#include <iostream>
#include <map>
using namespace std;
int main() {
// 创建一个map
map<string, int> my_map;
my_map["apple"] = 2;
my_map["banana"] = 5;
my_map["orange"] = 3;
// 查找键为"banana"的值
map<string, int>::iterator it = my_map.find("banana");
if (it != my_map.end()) {
cout << "查找到:" << it->second << endl;
} else {
cout << "未找到" << endl;
}
// 查找不存在的键
it = my_map.find("pear");
if (it != my_map.end()) {
cout << "查找到:" << it->second << endl;
} else {
cout << "未找到" << endl;
}
return 0;
}
```
阅读全文