unordered map用法
时间: 2023-11-10 22:05:56 浏览: 36
unordered_map是C++标准库中的一个容器,它是一个哈希表,用于存储键值对。与map不同的是,unordered_map中的元素是无序的。使用unordered_map的步骤如下:
1. 包含头文件:需要包含<unordered_map>头文件,以便使用unordered_map容器。
2. 定义unordered_map对象:使用模板定义unordered_map对象,指定键类型和值类型。例如,可以定义一个存储整数和字符串的unordered_map对象:unordered_map<int, string> myMap;
3. 插入键值对:使用insert函数或[]运算符将键值对插入到unordered_map中。例如,可以使用insert函数插入键值对:myMap.insert(make_pair(1, "apple")); 或者使用[]运算符插入键值对:myMap = "banana";
4. 访问元素:使用[]运算符或at函数来访问unordered_map中的元素。例如,可以使用[]运算符直接访问元素:string fruit = myMap[1]; 或者使用at函数访问元素:string fruit = myMap.at(1);
5. 删除元素:使用erase函数删除unordered_map中的元素。例如,可以使用erase函数删除键为1的元素:myMap.erase(1);
6. 遍历unordered_map:可以使用迭代器来遍历unordered_map中的所有键值对。例如,可以使用auto关键字和range-based for循环来遍历unordered_map: for(auto it = myMap.begin(); it != myMap.end(); ++it) { int key = it->first; string value = it->second; // do something with key and value }