如何定义-std=c++;11作为g+中的默认值+; 我在C++程序中使用一些特性,我需要代码> -STD= C++ 11 < /Cord>选项,设置在G++< /P>
是否可以将此选项设置为默认值,而不必在编译时一直使用此选项如何定义-std=c++;11作为g+中的默认值+; 我在C++程序中使用一些特性,我需要代码> -STD= C++ 11 < /Cord>选项,设置在G++< /P>,c++,class,constructor,derived-class,C++,Class,Constructor,Derived Class,是否可以将此选项设置为默认值,而不必在编译时一直使用此选项 或者如何在Makefile中进行设置。是的,通常在Makefile中进行设置: CXXFLAGS=-std=c++11 在上面的一层,您还可以通过autoconf、cmake或您可能部署的任何其他元构建工具来检测合适的编译器 当然,您可以将游戏定义为g++11为g++-std=c++11,但这样的设置是不可移植的 g++-6.*将默认为c++14,因此在某些情况下,此开关将是隐式的。但是,可能需要很长一段时间才能让所有带有g++-4
或者如何在Makefile中进行设置。是的,通常在Makefile中进行设置:
CXXFLAGS=-std=c++11
在上面的一层,您还可以通过autoconf
、cmake
或您可能部署的任何其他元构建工具来检测合适的编译器
当然,您可以将游戏定义为g++11
为g++-std=c++11
,但这样的设置是不可移植的
g++-6.*将默认为c++14,因此在某些情况下,此开关将是隐式的。但是,可能需要很长一段时间才能让所有带有g++-4.4.*的RHEL和CentOS boxen消失。这些甚至可能无法处理您当前的项目…是的,升级到GCC 6.1:
C++前端现在默认为C++ 14标准而不是C++ 98 < /P>
在中,您可以让一个makefile按如下方式执行此操作(这是一个没有变量的简单版本)
使用您选择的构建系统。可以是
make
、SCons
、CMake
、qmake
或其他内容,并设置所需选项。需要30秒,你就完成了
或者,将您的编译器升级到默认使用C++11的版本。在
cxflags
中设置它,它必须完全是C++11还是一个新的标准也被接受?不完全是,我使用-std=C++11
以避免在这样的指令上出现错误:x={0,4}
这个问题专门询问了-std=c++11
,这可能意味着OP想要的是c++11,而不是c++14。
out: source.cpp
g++ -std=c++11 source.cpp -o out