Visual Studio 2013 编译严格的 c++11

Posted

技术标签:

【中文标题】Visual Studio 2013 编译严格的 c++11【英文标题】:Visual studio 2013 to compile strict c++11 【发布时间】:2015-04-17 16:06:06 【问题描述】:

引用hereVisual c++ 2013 支持 c++11 的大部分内容,以及一些额外的功能和一些更改。但是,我需要能够在 c++11 中严格编写和编译。是否有一个包只包含 c++11 标头或我可以实现以使 Visual Studio 在 c++11 中工作的其他设置?我查看了this 链接问题,但这并不是我想要的。此外,我没有旧版本可以按照建议将框架更改为。谢谢。

【问题讨论】:

无法选择您要使用的语言版本。选择平台工具集版本后,您将获得该版本支持的所有内容,无论是 C++11 还是更高版本。也许您可以使用 -std=c++11 选项使用 g++ (MinGW) 编译代码以进行验证。这也将帮助您找到 VS 接受的其他不合规代码。 @Praetorian 是我可以在 Visual Studio 中进行的修改,还是我需要在 Linux 机器中运行它并使用该标志制作我自己的 make 文件?这可能是题外话,如果是我道歉。 不,你不能在 VS 中使用它,但你可以在 Windows 上运行它。下载 MinGW 发行版,例如one of these。您可能需要使用 make 文件或其他构建系统。 【参考方案1】:

不,你不能那样做。遵守C++11 不仅仅是标题问题。它需要一个完全兼容的编译器。如果您使用VS2013,则需要满足C++11 功能的受支持子集。

【讨论】:

以上是关于Visual Studio 2013 编译严格的 c++11的主要内容,如果未能解决你的问题,请参考以下文章

面向 XP 的 Visual Studio 2013 的 Visual C++ 编译器标志

Qt 4.8,Visual Studio 2013 编译错误

Visual Studio 2013编译Tesseract 3.04

使用 Visual Studio Express 2013 进行 64 位编译

如何编辑 Microsoft Visual Studio 2013 编译器开关? [复制]

Visual Studio 2013 发布编译不打开文件