因此,我正在遵循本页上的教程:http://www.cplusplus.com/doc/tutorial/control/但是我在执行range/based for循环时遇到了问题。我找到了这个页面:GNU GCC compiler updating这里的答案是我应该打开“项目”和“属性”。但是当我尝试这样做时,“属性”选项是灰色的,没有任何解释:http://imageshack.com/a/img571/4371/xd1x.png那么..如何激活range/based for循环?
因此,我正在遵循本页上的教程:http://www.cplusplus.com/doc/tutorial/control/但是我在执行range/based for循环时遇到了问题。我找到了这个页面:GNU GCC compiler updating这里的答案是我应该打开“项目”和“属性”。但是当我尝试这样做时,“属性”选项是灰色的,没有任何解释:http://imageshack.com/a/img571/4371/xd1x.png那么..如何激活range/based for循环?
9条答案
按热度按时间bvk5enib1#
将
-std=c++11
标志传递给编译器。当然愚者应该足够新鲜(〉=4.7)以支持所有这些现代标准。对于CodeBlocks 13.12:设置-〉编译器-〉选项卡“编译器标志”-〉选项“让g遵循C11 ISO C++ [-std=c++11]”qnzebej02#
上面给出的使用
-std=c++11
的解决方案对我不起作用。这是我的编译器的目标和版本详细信息。
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) Target: x86_64-linux-gnu
当我尝试的时候,就是这样的结果。
$ g++ -std=c++11 program.cpp cc1plus: error: unrecognized command line option ‘-std=c++11’
这为我解决了问题。
$ g++ -std=c++0x program.cpp
oug3syen3#
在Dev-Cpp 5.11中,只需单击工具〉编译器选项〉设置〉代码生成〉(以及最后一个选项)**语言标准(-std)**从下拉列表中选择(ISO C++ 11)。
4nkexdtk4#
如果您在Code::Blocks中遇到此错误,这可能会帮助您-
单击设置-〉编译器-〉编译器设置-〉编译器标志
在“常规”部分下,勾选[]旁边的框:让g遵循C11 ISO C++ 标准[-std=c++11]
iecba09b5#
这两种情况:
对我有用。
编译后要做的唯一事情是将
test_executable
(在第一种情况下)作为./test_executables
执行,或者将程序(在第二种情况下)作为./program
执行。fiei3ece6#
使用上面的解决方案
g++ -std=c++0x program.cpp
是可行的。但是,需要稍微修改命令,以便使用通用命令运行程序:./program
我用的是
g++ -std=c++0x -o program program.cpp
,一切都很完美。wlwcrazw7#
如果您正在使用
QT5.5
,则可以通过在.pro
文件中添加以下行来实现。CONFIG += c++11
ojsjcaue8#
最好的解决方案是在Dev C中这样做:
1.转到“工具”选项
1.选择“编译器选项”
1.点击“设置”
1.单击“代码生成”
1.转到“选择语言”并选择“ISO C11”
那么您的问题就解决了。
wb1gzix09#
第一次,如果您有Dev-C++
C:\Program Files (x86)\Dev-Cpp\MinGW64\bin
,必须将此路由添加到路径,然后使用cmd中的下一个命令。g++ -std=c++11 -o outprogram code_source.cpp
此命令。