vc++2005 和 g++中使用hash_map

来源:互联网 发布:人力资源软件下载 编辑:程序博客网 时间:2024/06/04 21:49
hash_map不在C++98/2003标准中,因此在VC++2005和g++中使用的方法略有区别。

【1】VC++2005
#include <hash_map> // 注意头文件和namespace
using namespace stdext;

int main()
{
    hash_map
<stringint> hmap;
    
return 0;
}



【2】g++
#include <ext/hash_map>
using namespace __gnu_cxx;

// 需要自己写hash函数
struct string_hash   
{   
    size_t 
operator()(const string& str) const   
    
{   
        
return __stl_hash_string(str.c_str());   
    }
   
}
;

int main()
{
    hash_map
<stringint, string_hash> hmap;
    
return 0;
}