首页 > 代码库 > C++学习笔记 <hash_map> <散列映射>

C++学习笔记 <hash_map> <散列映射>

对于大型容器而言hash_map要比map快5至10倍的元素查找速度。

map对其元素类型要求有一个<,hash_map要求一个==和一个散列函数。

map<string,int>  m1;   //用<比较串

map<string,int Nocase>   m2;       //用Nocase()比较串

hash_map<string,int>   hm1;        //用Hash<string>()散列,用==比较

hash_map<string,int,hfct>   hm2;        //用hfct()散列,用==比较

hash_map<string,int,hfct,eql>  hm3;     //用hfct()散列,用eql比较

hash_map也提供了一个find(),使程序员可以确定某个关键码是否已经插入表中。

erase();   //删除某个关键字

C++学习笔记 <hash_map> <散列映射>