-std GCC4.8.1的默认值

Dea*_*hen 5 c++ gcc c++11

如果我-std在使用GCC4.8.1编译我的C++应用程序时没有指定选项,它是否默认应用c ++ 11值?

我读了GCC文件中的文字,但仍然不确定.我的英语不好,所以可能是我的坏.

-fext-numeric-literals(仅限C++和Objective-C++)接受虚构,定点或机器定义的文字数字后缀作为GNU扩展.关闭此选项后,这些后缀将被视为C++ 11用户定义的文字数字后缀.对于所有pre-C++ 11方言和所有GNU方言,默认情况下都会启用:-std = c ++ 98,-std = gnu ++ 98,-std = gnu ++ 11,-std = gnu ++ 1y .默认情况下,此选项在ISO C++ 11之后关闭(-std = c ++ 11,...).

Yu *_*Hao 11

2018年更新:在最新版本的gcc中,-std现在是默认选项-std=gnu++14.


从gcc标准 2.2 C++语言

如果没有给出C++语言方言选项,则默认为-std = gnu ++ 98.

因此,如果要启用C++ 11功能,则必须添加选项-std=c++11或 -std=gnu++11(对于带有GNU扩展的C++ 11)