C++ hash函数 unordered map
时间: 2023-10-17 09:34:09 浏览: 170
C++中的哈希容器unordered_map使用示例
C++11引入了`unordered_map`,可以通过包含头文件`<unordered_map>`来使用它。为了避免每次都需要写`std::unordered_map`,你可以使用`using`语句引入命名空间`std`。下面是一个使用`unordered_map`的示例代码:
```cpp
#include <iostream>
#include <unordered_map>
using namespace std;
int main() {
unordered_map<string, int> myMap; // 创建一个键值对为<string, int>的unordered_map
// 插入元素
myMap["apple"] = 5;
myMap["banana"] = 2;
myMap["orange"] = 8;
// 访问元素
cout << "Number of apples: " << myMap["apple"] << endl;
// 遍历unordered_map
for (auto it = myMap.begin(); it != myMap.end(); ++it) {
cout << it->first << ": " << it->second << endl;
}
// 查找元素
if (myMap.find("banana") != myMap.end()) {
cout << "The value of banana is: " << myMap["banana"] << endl;
}
// 删除元素
myMap.erase("orange");
return 0;
}
```
在这个例子中,我们创建了一个`unordered_map`,键类型为`string`,值类型为`int`。我们使用`[]`操作符插入了几个元素,并使用`cout`输出了某些元素的值。我们也展示了如何遍历`unordered_map`,查找元素和删除元素。你可以按照这个例子来使用`unordered_map`。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
阅读全文