c++ std::map. find
时间: 2024-06-17 10:00:30 浏览: 162
C++ STL中的std::map是一种关联式容器,它提供了一种基于键值对进行快速查找的方式。每个元素都是一个键值对(key-value pair),其中key是唯一的且按照特定的顺序排列,value是与之对应的值。在std::map中,我们可以通过给定一个key来查找相应的value。
std::map中有一个成员函数find,它可以用来查找指定key所对应的value。find返回一个迭代器,它指向key所对应的value。如果在map中没有找到指定的key,则返回end迭代器。
以下是find函数的函数原型:
```
iterator find (const key_type& k);
const_iterator find (const key_type& k) const;
```
其中,k为要查找的key,函数会返回一个迭代器,它指向key所对应的value。如果没找到,则返回end迭代器。
相关问题
std::map .find().second
std::map是C++ STL中的一个关联式容器,它提供了一种映射的关系,可以将键值与数据值进行一一映射。其中,find()函数可以用来查找某个键值是否存在,如果存在,返回一个迭代器,否则返回末尾迭代器。而.second则是用来返回迭代器指向的元素的数据值(即映射关系中的值)。举个例子:
```
std::map<int, std::string> myMap;
myMap = "hello";
myMap = "world";
auto it = myMap.find(1);
if(it != myMap.end()) {
std::cout << it->second << std::endl; // 输出 hello
}
```
在上述代码中,我们定义了一个映射关系,将整数与字符串进行映射。然后使用find函数查找键值为1的元素是否存在,由于存在,所以返回了一个迭代器,通过迭代器的second成员函数获取到了与1对应的字符串"hello"。
std::map.find()使用
在C++中,std::map是一个关联容器,它存储了一对键值对,并根据键的顺序进行排序。std::map.find()函数用于在map中查找指定的键,并返回一个指向该键的迭代器。如果找到了该键,则返回指向该键的迭代器;如果未找到,则返回指向map末尾的迭代器。
下面是std::map.find()的使用示例:
```cpp
#include <iostream>
#include <map>
int main() {
std::map<int, std::string> mapS;
mapS[1] = "one";
mapS[2] = "two";
mapS[3] = "three";
std::map<int, std::string>::iterator it = mapS.find(2);
if (it != mapS.end()) {
std::cout << "Key found! Value: " << it->second << std::endl;
} else {
std::cout << "Key not found!" << std::endl;
}
return 0;
}
```
输出结果为:
```
Key found! Value: two
```
阅读全文