对于以下情况,有人可以告诉我在 C++ 中开始使用 Hashmap 的代码:
我想要(int,string [])的(key,value)映射。
所以,我的地图应该有一个指向某个大小的字符串数组的 int 键。如何在 C++ 中为此声明和使用哈希映射。
请帮我解决一下这个。提前致谢
您可以使用 a of s of s,但在 C++ 中提供了更好的选择。它允许您为同一个键存储多个项目,而无需在每个映射条目中管理向量。std::map
std::unordered_map
std::vector
std::string
unordered_multimap
以下是使用地图的示例:
using namespace std;
int main(int argc, const char* argv[]) {
unordered_map<int,vector<string>> mvs;
vector<string> items1;
items1.push_back("hello");
items1.push_back("world");
vector<string> items2;
items2.push_back("quick");
items2.push_back("brown");
items2.push_back("fox");
mvs[1] = items1;
mvs[200] = items2;
mvs[4].push_back("another_one");
for(unordered_map<int,vector<string>>::const_iterator iter = mvs.begin() ; iter != mvs.end() ; iter++) {
cout << iter->first << ":";
for (vector<string>::const_iterator jter = iter->second.begin() ; jter != iter->second.end() ; jter++) {
cout << *jter << " ";
}
cout << endl;
}
return 0;
}
编辑提及哈希图。