vc100(Visual Studio 2010默认生成器)与C++11/C++14的关联及支持性咨询
关于Visual Studio 2010(vc100)与C11/C14标准支持的解答
首先明确:vc100就是Visual Studio 2010自带的MSVC编译器版本标识,它和C++标准的关联如下:
- Visual Studio 2010(vc100)不是仅支持C++98,但对C11的支持非常有限,且完全不支持C14。
- C11是2011年才正式发布的ISO标准,VS2010在2010年就已推出,所以不可能完整支持C11。不过微软在这个版本里提前加入了部分C11的实验性特性,比如
auto关键字的基础支持、lambda表达式的雏形、右值引用的初步实现,但这些特性都不符合完整的C11标准,存在诸多限制和兼容性问题。 - C14是2014年发布的标准,VS2010的发布时间远早于该标准,因此完全没有对C14特性的支持。
如果需要完整支持C11,至少要使用Visual Studio 2015(vc140)及以上版本;完整支持C14则推荐使用Visual Studio 2017及以上版本(VS2015仅支持大部分C++14特性,存在少量缺失)。
内容的提问来源于stack exchange,提问作者ZhengLiu97
相关产品推荐
相关产品推荐

