使用unordered_map.find后判断是否找到的if语句怎么写
时间: 2023-08-02 17:24:05 浏览: 72
2023年最新C++面试题.rar
可以这样写:
```c++
unordered_map<int, string> mp;
// 假设 mp 中有一些键值对
int key = 123;
auto iter = mp.find(key);
if (iter != mp.end()) {
// 找到了
string value = iter->second;
// 处理 value
} else {
// 没找到
// 处理找不到的情况
}
```
`mp.find(key)` 返回的是一个迭代器,如果找到了,那么指向对应键值对的迭代器就会被返回,否则返回 `mp.end()`,表示没有找到。因此,可以用 `iter != mp.end()` 来判断是否找到,如果 `iter != mp.end()` 为 true,说明找到了,否则说明没找到。
阅读全文