当我编译一个使用hash_map的c ++应用程序时,我在g ++ 4.3.2上收到了这个警告:
您正在使用已弃用的标头。要消除此警告,请使用ANSI标准头文件或使用hte -Wno-deprecated编译器标志。
9> #include <ext/hash_map>
什么包含取代了这个?我在google上搜索了一段时间,除了遇到类似问题但没有解决方案的人之外找不到任何东西。
答案 0 :(得分:18)
我的第一个Google点击“g++ hash_map deprecated”将我带到a page,其中包含要使用的内容列表,而不是已弃用的标题和类。
对于hash_map
,该列表建议在unordered_map
标题中使用unordered_map
。该课程是TR1的新内容。
答案 1 :(得分:6)
我认为新的数据结构称为unordered_map
<tr1/unordered_map>
在std::tr1
命名空间中找到。
答案 2 :(得分:2)
包含时,不要忘记添加以下编译选项; “-std = c ++ 0x”,否则编译器将报告错误