我定义了一个hash_map <在GCC中的字符串,字符串,stringHashFunction> stringHashMap我保证stringHashFunction是正确的,因为我可以在正确的hash_map如何使用字符串字符串hash_map(hash_map <string,string,stringHashFunction>在Linux C++
当我打电话
string a = "sgsg";
string temp = stringHash[a];
编译器bug报告使用字符串到:
error: passing ‘const __gnu_cxx::hash_map, std::basic_string, StringHashFunctionStruct>’ as ‘this’ argument of ‘_Tp& __gnu_cxx::hash_map<_Key, _Tp, _HashFn, _EqualKey, _Alloc>::operator[](const key_type&) [with _Key = std::basic_string, _Tp = std::basic_string, _HashFn = StringHashFunctionStruct, _EqualKey = std::equal_to >, _Alloc = std::allocator >, __gnu_cxx::hash_map<_Key, _Tp, _HashFn, _EqualKey, _Alloc>::key_type = std::basic_string]’ discards qualifiers [-fpermissive]
为什么这可能发生?我应该如何使用字符串来字符串hashMap?
非常感谢。确实是这个问题 – RandyTek 2011-12-28 06:40:10