我使用的是 ubuntu 12.04,默认的 gcc 是 4.6.3。它不接受 c++11 命令,并且给我输出说该命令不兼容 c++98。我在网上查了一下,看到有人建议不要更改操作系统上的默认编译器,因为它变得不稳定。任何人都可以建议修复或安全的方式来下载符合 c++11 的 gcc 编译器。
问问题
79525 次
2 回答
27
正如其他人所建议的,您需要输入 std 命令行选项。让我们为您轻松
- 按Ctrl+ Alt+打开终端T
sudo gedit ~/.bashrc
输入以下行作为最后一行
alias g++="g++ --std=c++0x"
- 保存并关闭文件并关闭终端。
- 现在再次打开终端并简单地编译你的 c++ 11 程序
g++ filename.cpp
就是这样。默认情况下,它将为 c++11 标准编译。
注意:如果您遵循上述选项,要编译非 c++ 11 程序,您必须使用
g++ --std=c++98 filename.cpp
于 2013-06-29T10:19:26.403 回答
22
gcc 4.6.3支持许多 c++11 特性。但是,默认情况下它们被禁用。要启用它们,请使用以下标志:
g++ -std=c++0x ...
此标志还禁用 GNU 扩展;要使它们保持启用状态,请使用-std=gnu++0x
标志。
于 2013-06-29T10:02:00.373 回答