我在Mac OSX Mountain Lion上使用http://hpc.sourceforge.net上的gcc 4.8.1 .我正在尝试编译一个使用该to_string函数的C++程序<string>.我-std=c++11每次都需要使用旗帜:
g++ -std=c++11 -o testcode1 code1.cpp
Run Code Online (Sandbox Code Playgroud)
有没有办法默认包含这个标志?
当我想编译时,我需要指定-std=c++11如下:
g++ -Wall -std=c++11 main.cpp -o main
Run Code Online (Sandbox Code Playgroud)
我想知道是否有永久设置-std = c ++ 11标志的解决方案,以便可以这样做:
g++ -Wall main.cpp -o main
Run Code Online (Sandbox Code Playgroud)
没有旗帜.
我想知道当我执行类似g++ main.cpp.
我知道我可以运行g++ -v编译器版本,例如返回:
Apple clang version 14.0.0 (clang-1400.0.29.202)
Target: arm64-apple-darwin22.1.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
Run Code Online (Sandbox Code Playgroud)
但我不确定这里使用的默认 C++ 语言版本是什么。
我也知道我可以用来-std=c++(version)更改它,但是,最好将默认值设置为 c++20 以保持最新状态并且不必使用标志。