Mon*_*ams 1 c++ compiler-errors codeblocks c++11
CodeBlocks即使没有-std=c++11启用选项(我检查了所有设置和项目文件),仍然会给我这个错误.
有没有办法禁用它?
这是我最好的猜测.您用于构建项目的编译器是gcc.您已-std=c++11在此编译器的全局设置中进行了设置,但已安装的gcc版本太旧而无法识别该选项.
要在Code :: Blocks IDE中检查它:
导航设置 - >编译器
从标有Selected compiler的下拉菜单中,选择GNU GCC编译器
在下面的选项卡面板上,选择" 编译器设置" - >"编译器标志"
从标有"类别"的下拉菜单中选择<All categories>.
查看编译器选项的复选框列表,直到看到:
让g ++遵循C++ 11 ISO C++语言标准[-std = c ++ 11]
如果这样可以解决问题,则应考虑将gcc升级到支持该-std=c++11选项的版本(> = 4.7),因为您将支持最新C++标准的C++语言和库功能.
如果您不能这样做,您可能会发现-std=c++0x编译器可以接受该选项.如果可行,它将为您的编译器发布时可用的某些临时版本的C++ 11标准提供支持.
与上述不太相关的情况是,您用于构建项目的编译器不是gcc,而是一些其他非命令行兼容的编译器,而不是您通过复制GCC的全局配置在Code :: Blocks中设置的编译器,其中-std-c++11选项已设置.在这种情况下,您只需确保没有为此编译器配置它无法识别的全局选项.
为了将来的参考,如果您对c ++编译器的命令行选项有疑问,请说明它是什么编译器,以及版本.
| 归档时间: |
|
| 查看次数: |
5758 次 |
| 最近记录: |