unordered_map的find的用法
unordered_map是C++ STL中的一个容器,用于存储键值对。它基于哈希表实现,可以快速地查找和插入元素。
unordered_map的find函数用于在容器中查找指定键的元素,并返回一个迭代器,指向该元素。如果找到了键对应的元素,则返回指向该元素的迭代器;如果没有找到,则返回指向容器中最后一个元素之后位置的迭代器end()。
unordered_map的find函数的语法如下:
iterator find (const key_type& k);
其中,iterator是一个迭代器类型,key_type是unordered_map中键的类型,k是要查找的键。
下面是一个示例代码,演示了unordered_map的find函数的用法:
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<std::string, int> map = {
{"apple", 1},
{"banana", 2},
{"orange", 3}
};
std::unordered_map<std::string, int>::iterator it = map.find("banana");
if (it != map.end()) {
std::cout << "Found: " << it->first << " -> " << it->second << std::endl;
} else {
std::cout << "Not found." << std::endl;
}
return 0;
}
输出结果为:
Found: banana -> 2
在上述代码中,我们创建了一个unordered_map对象map,并初始化了一些键值对。然后使用find函数查找键为"banana"的元素,并通过迭代器访问该元素的键和值。最后输出结果为"Found: banana -> 2"。
需要注意的是,unordered_map中的键是唯一的,因此find函数最多只能返回一个元素。如果需要查找多个键相同的元素,可以使用unordered_map中的equal_range函数
原文地址: https://www.cveoy.top/t/topic/ie6z 著作权归作者所有。请勿转载和采集!