Visual Studio 2017仅支持c 11功能吗?

Visual Studio 2017 to only support c++11 features?

是否有一种方法可以将MSVC限制为仅支持c 11功能,但不支持c 14或17中的任何功能?

我正在使用MSVC 14.1 _MSC_VER == 1910(Visual Studio 2017版本15.0)

谢谢!


它似乎不是。 MSVC的C编译器确实具有/std编译器选项,但是文档仅说它可以用作/std:c++14/std:c++17/std:c++latest(以包括C 20草案中的某些功能)。

但是,C 11和C 14之间并没有太大的变化,其中许多可以被认为是对不方便或C 11缺少的东西的"修复"。因此,也许/std:c++14可能很接近足以满足您的目的?


我不知道您想避免使用哪些特定的C 14/17功能,但是您可以查看Microsoft对C 11/14/17功能的支持(现代C),然后选择其功能的Visual Studio版本set最接近您要查找的内容。

您可以使用该版本的Visual Studio或任何更高版本,因为Visual Studio支持使用较旧的工具集进行编译,前提是您已安装了这些工具集。