温馨提示×

c++ hashmap用法是什么

c++
小樊
85
2024-08-30 14:52:52
栏目: 编程语言

在C++中,hash_map 是一个非标准的容器,它提供了基于哈希表的键值对存储。然而,需要注意的是,自从C++11起,hash_map已经被废弃,并在C++17中被移除。取而代之的是unordered_map,它提供了类似的功能,但有更好的性能和更广泛的支持。

不过,如果你仍然需要使用hash_map(可能是因为你在使用一个较旧的编译器或者特定的库),这里有一个简单的用法示例:

首先,你需要包含相应的头文件:

#include <hash_map>

然后,你可以创建一个hash_map实例,并向其中添加键值对:

std::hash_map<int, std::string> my_hash_map;
my_hash_map[1] = "one";
my_hash_map[2] = "two";
my_hash_map[3] = "three";

你还可以使用insert()方法添加元素:

my_hash_map.insert(std::make_pair(4, "four"));

要访问hash_map中的元素,你可以使用下标操作符:

std::string value = my_hash_map[2]; // value will be "two"

此外,你还可以使用迭代器遍历hash_map中的所有元素:

for (std::hash_map<int, std::string>::iterator it = my_hash_map.begin(); it != my_hash_map.end(); ++it) {
    std::cout << it->first << ": " << it->second<< std::endl;
}

然而,由于hash_map已经被废弃,我强烈建议你使用unordered_map代替。unordered_map的用法与hash_map非常相似,只需将头文件和容器类型更改为unordered_map即可。

0