C++ std::unordered_map怎么用

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ std::unordered_map怎么用相关的知识,希望对你有一定的参考价值。

#include <iostream>  
#include <unordered_map>  
#include <map>
#include <string>  
using namespace std;  
int main()  
{  
	//注意:C++11才开始支持括号初始化
    unordered_map<int, string> myMap={{ 5, "张大" },{ 6, "李五" }};//使用{}赋值
    myMap[2] = "李四";  //使用[ ]进行单个插入,若已存在键值2,则赋值修改,若无则插入。
    myMap.insert(pair<int, string>(3, "陈二"));//使用insert和pair插入
  
	//遍历输出+迭代器的使用
    auto iter = myMap.begin();//auto自动识别为迭代器类型unordered_map<int,string>::iterator
    while (iter!= myMap.end())
    {  
        cout << iter->first << "," << iter->second << endl;  
        ++iter;  
    }  
	
	//查找元素并输出+迭代器的使用
    auto iterator = myMap.find(2);//find()返回一个指向2的迭代器
    if (iterator != myMap.end())
	    cout << endl<< iterator->first << "," << iterator->second << endl;  
    system("pause");  
    return 0;  
}  

此时用的是unordered_map,输出的结果为:


若把unordered_map换成map,输出的结果为:

https://blog.csdn.net/qq_21997625/article/details/84672775

以上是关于C++ std::unordered_map怎么用的主要内容,如果未能解决你的问题,请参考以下文章

C++ std::unordered_map 中使用的默认哈希函数是啥?

std::unordered_map 如何表现? [C++]

C++ 将预先保留的哈希映射(std::unordered_map)与整数键和连续数据数组(std::vector)进行比较

C++ std::map 和 std::unordered_map 区别 时间复杂度 适用

Javascript中C++ std::unordered_map<char, int> 的等价物是啥?

gcc std::unordered_map 实现速度慢吗?如果是这样 - 为啥?