错误:'unordered_set'不是'std'的成员

4
在C++中,我想要像下面这样简单地声明一个unordered_set: ```cpp std::unordered_set mySet; ```
std::unordered_set<int> k;

但是它显示了这个错误:
错误:'unordered_set'不是'std'的成员
我正在使用在Windows上使用MinGW的g++(GCC)5.3.0。以下是我已经考虑过的事情:
1.通过 #include 添加头文件 2.升级MinGW 3.使用标志 -std=gnu++11。(这不会生成任何可执行文件或错误,不确定它是否有任何作用)
如何修复它并成功编译我的代码?

4
尝试使用-std=c++11开关。 - pSoLT
1
@Tejendra 他在问题中特别提到尝试过那种方法。 - François Andrieux
-std=c++11-std=gnu++11是不同的。当你尝试使用-std=c++11时会发生什么? - NathanOliver
@AbhipsoGhosh 在回答问题时,请记得在评论中添加“@用户名”,这样其他人就可以知道你正在回答哪个问题。 - François Andrieux
当我使用g++ example.cpp时,会显示error: 'unordered_set' is not a member of 'std',而当我使用标志g++ -std=c++11 example.cpp时,它不会生成任何错误或可执行文件。@pSoLT - Abhipso Ghosh
显示剩余9条评论
1个回答

9
使用 -std=c++11 开关并指定输出文件。
g++ -std=c++11 your_file.cpp -o your_program

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接