c unordered_map
时间: 2023-08-17 20:11:13 浏览: 140
C++中的`unordered_map`是一个哈希表容器,用于存储键值对。它提供了快速的查找和插入操作,其时间复杂度接近常数。与`map`相比,`unordered_map`不会对键进行排序,但在大多数情况下,它的性能更好。
你可以使用`unordered_map`来存储任意类型的键和值。下面是一个示例:
```cpp
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<std::string, int> myMap;
// 插入键值对
myMap["apple"] = 3;
myMap["banana"] = 5;
myMap["orange"] = 2;
// 访问值
std::cout << "Number of apples: " << myMap["apple"] << std::endl;
// 检查键是否存在
if (myMap.find("banana") != myMap.end()) {
std::cout << "Bananas found!" << std::endl;
}
// 遍历所有键值对
for (const auto& pair : myMap) {
std::cout << pair.first << ": " << pair.second << std::endl;
}
return 0;
}
```
在上面的示例中,我们创建了一个`unordered_map`,其中键是字符串类型,值是整数类型。我们插入了几个键值对,并通过键来访问和输出对应的值。注意,键是唯一的,重复插入同一个键会更新对应的值。
希望这个例子能帮助你理解`unordered_map`的基本用法。如果你有更多问题,请随时问我!
阅读全文