为什么hashmap占用内存多

更新时间:02-09 教程 由 暗香浮 分享

为什么hashmap占用内存多?

c++ 中hashmap占用内存多的原因是基础类型太少,对象用的太多导致的。解决方法:

1、导入stl中的hash_map类库#include using namespace std; using namespace stdext;

2、hash_map是一个聚合类它继承自_Hash类,包括一个vector,一个list和一个pair,其中vector用于保存桶,list用于进行冲突处理,pair用于保存key->value结构,简要地伪码如下: class hash_map { private: typedef pair<_Tkey, _Tval> hash_pair; typedef list hash_list; typedef vector hash_table; };

3、用法举例:hash_map IntHash; IntHash[1] = 123; IntHash[2] = 456; int val = IntHash[1]; int val = IntHash[2];

声明:关于《为什么hashmap占用内存多》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2190225.html