您的位置:首页 > 运维架构 > Linux

C++中的hash_map——Linux下g++和Windows下VC++下头文件,命名空间

2012-03-18 10:20 537 查看
在Linux下g++的形式:
头文件:: #include <ext/hash_map>

命名空间:: using namespace __gnu_cxx;

使用上和map区别不大,差别主要在性能上。

map采用红黑树的方式,而hash_map采用哈希的方法,

插入:: 所以map的插入和删除速率要比hash_map高,hash_map要做冲突处理。

查找:: 但是查找上hash_map就要比map的性能高很多,因为是哈希,所以可以直接按照内容找到。

使用方法::

使用方法上和map没有什么大的区别,

#include <ext/hash_map>

using namespace __gnu_cxx;

hash_map<key_type,value_type> obj;

hash_map<key_type,value_type>::iterator iter = obj.begin();

在Windows下VC++的形式:

和map的使用方法一样,没有命名空间,直接#include <hash_map>就可以使用了,就像直接#include <map>一样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: