c++中map的find函数用法
时间: 2023-10-31 14:02:59 浏览: 894
在C++中,map是一种关联容器,它将键和值一一对应,可以通过键快速查找值。map的find函数用于查找指定键是否存在,并返回对应的迭代器。
以下是map的find函数的语法:
```c++
map_name.find(key);
```
其中,map_name是map的名称,key是要查找的键。find函数的返回值是一个迭代器,如果找到了指定的键,则返回指向该键值对的迭代器;如果没有找到,则返回指向map末尾的迭代器。
以下是一个示例代码,演示如何使用map的find函数:
```c++
#include <iostream>
#include <map>
using namespace std;
int main()
{
map<string, int> phone_book;
phone_book["Alice"] = 123456;
phone_book["Bob"] = 234567;
phone_book["Charlie"] = 345678;
// 查找键为 "Bob" 的值
map<string, int>::iterator it = phone_book.find("Bob");
if (it != phone_book.end()) {
cout << "Bob's phone number is: " << it->second << endl;
}
else {
cout << "Bob's phone number not found." << endl;
}
// 查找键为 "David" 的值
it = phone_book.find("David");
if (it != phone_book.end()) {
cout << "David's phone number is: " << it->second << endl;
}
else {
cout << "David's phone number not found." << endl;
}
return 0;
}
```
输出结果为:
```
Bob's phone number is: 234567
David's phone number not found.
```
在这个示例代码中,首先创建了一个名为phone_book的map,用来存储人名和电话号码。然后通过[]运算符将几个名字和电话号码添加到map中。
接着使用find函数查找键为"Bob"和"David"的电话号码。对于"Bob",找到了对应的键值对,输出了电话号码;对于"David",没有找到对应的键值对,输出了提示信息。
阅读全文