【问题标题】:Change default C++ standard in g++更改 g++ 中的默认 C++ 标准
【发布时间】:2017-05-29 16:09:56
【问题描述】:

为了以 C++11 标准编译程序,我们需要做:

 g++ -std=c++11 myProgram.cpp -o myProgramExec

但是有没有可能我可以将 g++ 的默认标准设置为 C++11,这样我就不必一次又一次地提及这个选项虽然我也可以在我的 .bashrc 中为此添加一个别名:

alias g++='g++ -std=c++11';

但我想知道是否有比这更好的方法。是否有任何可以编辑的 g++ 配置文件来实现这一点?或者有更简单的方法吗?

【问题讨论】:

  • g++6.0开始,默认标准为-std=c++14

标签: c++ linux c++11 g++


【解决方案1】:

经过一些研究(您可能自己已经完成了),除了重建自定义版本或为其设置别名之外,我还没有找到改变g++ 的默认行为的方法。


为什么这可能是件好事

g++ 的每个版本都有一个单一的、明确定义的默认行为,这一点很重要。考虑一下:如果您更改 g++ 的默认行为并尝试编译其作者不知道您的配置的 C++ 项目,则该项目可能无法编译或编译时出现细微的错误/意外行为。

在您自己的项目中,您可以轻松地将所有相关标志和选项添加到您的MakefileCMakeLists.txt,这样您就无需再次键入它们。这也将确保编译您的项目的其他人将收到正确的选项,而不管他们的配置如何。

【讨论】:

  • 这不能回答问题。
  • @jbapple 用我对该问题的最佳答案进行了编辑(这有点令人失望)。
猜你喜欢
  • 1970-01-01
  • 2017-11-27
  • 1970-01-01
  • 2021-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-28
相关资源
最近更新 更多