C++mapfind函数
时间: 2024-08-25 15:01:11 浏览: 58
C++在成员函数中使用STL的find_if函数实例
`std::map` 是 C++ 中的一个关联容器,它提供了一种键值对的存储结构,类似于字典或哈希表。当你想要通过键来查找元素时,可以使用 `find` 函数。这个函数有两个版本:
1. `iterator find(const key_type& key)`: 这个版本接受一个 const 引用作为参数,返回一个迭代器,指向键对应的映射项。如果找到了匹配的键,迭代器指向该位置;如果没有找到,则返回 `end()`,表示容器结束的位置。
示例:
```cpp
std::map<int, string> myMap;
auto it = myMap.find(42); // 如果42存在,it会指向对应的字符串
```
2. `const_iterator find(const key_type& key) const`: 类似的函数,但在常量引用上调用,用于读取操作,不会修改容器内容。
如果你尝试访问不存在于 map 中的键,`find` 函数不会抛出异常,而是会直接返回 `end()` 或 `const.end()`。
阅读全文