unordered_map map.find
时间: 2023-10-17 12:35:15 浏览: 128
`unordered_map.end()`是C++中`unordered_map`容器的成员函数,用于返回一个迭代器,指向容器的尾部之后的位置。换句话说,它指向的是容器中最后一个元素之后的位置。在使用迭代器遍历容器时,通常会将`unordered_map.end()`作为循环的终止条件。
例子代码:
```cpp
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<int, std::string> myMap;
myMap[1] = "Apple";
myMap[2] = "Banana";
myMap[3] = "Orange";
// 遍历打印unordered_map中的所有元素
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
std::cout << it->first << ": " << it->second << std::endl;
}
return 0;
}
```
输出:
```
1: Apple
2: Banana
3: Orange
```
在上面的示例中,`it`是一个迭代器,它从`myMap.begin()`开始遍历到`myMap.end()`之前的位置,以
相关问题
unordered_map.find
unordered_map::find()函数是用于在C++中查找unordered_map容器中指定键的元素的函数。该函数返回一个指向该元素的迭代器。如果指定的键不存在于unordered_map中,则返回指向unordered_map尾部的迭代器。用法示例:
```
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<std::string, int> mymap = {
{"apple", 1},
{"orange", 2},
{"banana", 3}
};
auto it = mymap.find("orange");
if (it != mymap.end()) {
std::cout << "The value of 'orange' is " << it->second << std::endl;
} else {
std::cout << "Key not found in mymap" << std::endl;
}
return 0;
}
```
在上面的示例中,我们使用unordered_map::find()函数查找键为"orange"的元素。如果找到了该元素,则输出其值2。否则,输出"Key not found in mymap"。
unordered_map.find用法
unordered_map.find() 是 C++ STL 中用来查找 unordered_map 容器中指定键值的函数。其用法为:
```
unordered_map<Key, T> mymap;
typename unordered_map<Key, T>::iterator it = mymap.find(key);
if (it != mymap.end()) {
// 找到了
} else {
// 没找到
}
```
其中,`Key` 是 unordered_map 的键类型,`T` 是值类型。`mymap.find(key)` 返回一个迭代器,指向键值为 `key` 的元素。如果找到,则迭代器指向该元素;否则,迭代器等于 `mymap.end()`。
需要注意的是,如果 unordered_map 中存在多个键值等于 `key` 的元素,则只会返回其中任意一个元素的迭代器。如果需要查找所有满足条件的元素,需要自行遍历 unordered_map。
阅读全文