如何在C ++ 4.4.6中包含hash_map?

时间:2016-04-14 01:12:21

标签: c++ hashmap gcc4.4

我在我的C ++应用程序中使用hash_map。当我使用版本4.1.2构建应用程序时,构建成功。当我尝试使用4.4.6版本构建应用程序时,它会抛出错误

  

/ include / c ++ / 4.4.6 / backward / backward_warning.h:28:2:错误:#warning   此文件至少包含一个已弃用或过时的标头   可能会在将来某个日期删除,恕不另行通知。请用一个   具有等效功能的非弃用接口。为一个   替换标头和接口的列表,请参阅该文件   backward_warning.h。要禁用此警告,请使用-Wno-deprecated。

根据我的建议,我查看了/usr/include/c++/4.4.6/backward/backward_warning.h并将hash_map更改为unordered_map

现在我收到以下错误,

  

/ include / c ++ / 4.4.6 / c ++ 0x_warning.h:31:2:错误:#error此文件   需要编译器和库支持即将推出的ISO C ++   标准,C ++ 0x。这种支持目前是实验性的,必须是   使用-std = c ++ 0x或-std = gnu ++ 0x编译器选项启用。

我只能看到/usr/include/c++/4.4.6/c++0x_warning.h中的错误消息。

我是C ++的新手。有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

假设您正在使用GCC(g++),请尝试将-std=c++0x添加到命令行,因为消息显示编译器使用C ++ 11。