c unordered_map
时间: 2023-07-05 22:36:14 浏览: 102
C++中的哈希容器unordered_map使用示例
C++ STL库中的unordered_map是一种关联容器,它使用哈希表来实现数据的存储和查找。unordered_map中存储的数据是成对出现的键值对,其中每个键对应一个唯一的值。与map不同的是,unordered_map中的元素没有按照键值的大小进行排序。
unordered_map的使用需要包含头文件<unordered_map>。下面是一个使用unordered_map的示例:
```c++
#include <iostream>
#include <unordered_map>
using namespace std;
int main() {
unordered_map<string, int> months;
months["January"] = 31;
months["February"] = 28;
months["March"] = 31;
months["April"] = 30;
months["May"] = 31;
months["June"] = 30;
months["July"] = 31;
months["August"] = 31;
months["September"] = 30;
months["October"] = 31;
months["November"] = 30;
months["December"] = 31;
string month;
cout << "Enter a month: ";
cin >> month;
if (months.find(month) != months.end()) {
cout << "The number of days in " << month << " is " << months[month] << endl;
} else {
cout << "Invalid month." << endl;
}
return 0;
}
```
在上面的例子中,我们使用unordered_map来存储每个月份对应的天数。用户输入一个月份后,我们可以通过查找unordered_map中是否存在该键来确定该月份的天数。如果unordered_map中存在该键,则输出该月份的天数;否则输出“Invalid month.”。注意,在unordered_map中查找键的方法是使用find()函数,而不是使用下标[]运算符。
阅读全文