如何利用迭代器遍历C++ unordered_map

   2024-10-05 2290
核心提示:在C++中,可以利用迭代器来遍历unordered_map。下面是一个示例代码:#include iostream#include unordered_mapint main() {std::

在C++中,可以利用迭代器来遍历unordered_map。下面是一个示例代码:

#include <iostream>#include <unordered_map>int main() {    std::unordered_map<std::string, int> myMap = {        {"Alice", 20},        {"Bob", 25},        {"Charlie", 30}    };    for (auto it = myMap.begin(); it != myMap.end(); ++it) {        std::cout << "Key: " << it->first << ", Value: " << it->second << std::endl;    }    return 0;}

在上面的示例中,首先创建了一个unordered_map对象myMap,并初始化了一些键值对。然后通过使用迭代器从begin()开始遍历unordered_map中的所有元素,直到end()。在循环中,通过it->first和it->second可以访问到当前元素的键和值。

另外,也可以使用范围for循环来遍历unordered_map,示例代码如下:

#include <iostream>#include <unordered_map>int main() {    std::unordered_map<std::string, int> myMap = {        {"Alice", 20},        {"Bob", 25},        {"Charlie", 30}    };    for (const auto& pair : myMap) {        std::cout << "Key: " << pair.first << ", Value: " << pair.second << std::endl;    }    return 0;}

这种方法比较简洁,直接通过pair.first和pair.second访问键值对。不过需要注意的是,在范围for循环中使用const auto&,可以提高性能并避免不必要的复制。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号