#include <iostream>
#include <unordered_map>
#include <map>
#include <string>
using namespace std;
int main()
{
// 注意:C++11才开始支持括号初始化
unordered_map<int, string> myMap = { { 5, "aa" },{ 6, "bb" } }; //使用{}赋值
myMap[2] = "cc"; // 使用[ ]进行单个插入,若已存在键值2,则赋值修改,若无则插入。
myMap.insert(pair<int, string>(3, "dd")); // 使用insert和pair插入
myMap[2] = "ee"; // 使用[ ]进行单个插入,若已存在键值2,则赋值修改,若无则插入。
// 遍历输出+迭代器的使用
auto iter1 = myMap.begin(); // auto自动识别为迭代器类型unordered_map<int,string>::iterator
while (iter1 != myMap.end())
{
cout << iter1->first << "," << iter1->second << endl;
++iter1;
}
// 查找元素并输出+迭代器的使用
auto iter2 = myMap.find(2); // find()返回一个指向2的迭代器
if (iter2 != myMap.end())
cout << endl << iter2->first << "," << iter2->second << endl;
system("pause");
return 0;
}
C++11 unordered_map的使用
最新推荐文章于 2024-09-03 05:44:38 发布