【问题标题】:Run a project in Visual Studio 2015 in C++98 mode在 Visual Studio 2015 中以 C++98 模式运行项目
【发布时间】:2016-03-21 15:55:37
【问题描述】:

我目前有一个项目,我在 Visual Studio 2015 中使用最新的编译器(即默认编译器)进行了编程。不幸的是,我要求我的项目在 C++98 环境中编译和执行 - 有没有办法让我在 Visual Studio 中通过某种方式更改编译器版本来做到这一点,以便我可以检查我的项目是否仍然有效?

另外,在这个项目中,我使用的是 FLTK 1.3.3(一个 GUI 包)——如果我确实可以在 Visual Studio 2015 中执行此操作,我是否需要使用 C++98 模式重建这个库?

【问题讨论】:

  • 只需要使用旧版本的 Visual Studio,例如 VS2008。 FLTK 将使用 Express 版本构建。

标签: c++ visual-studio-2015 compatibility fltk c++98


【解决方案1】:

简短的回答是否定的。您无法更改 VS 编译时使用的 cl.exe。您可以设置一个 makeile 项目以使用旧版本的 mingw 或类似版本:

Can I force visual studio to use mingw compiler

Here 是有关创建 makefile 项目的一些信息。

【讨论】:

  • 我明白了,那我得看看这个选项,谢谢你的信息。
【解决方案2】:

在 VS 2015 更新 1 中使用 Microsoft CodeGen 进行 Clang

您可能想查看 Visual Studio 2015 Update 1 的新功能 clang/c2(带有 Microsoft c2 代码生成的 clang 前端)。

您应该能够使用-std=c++98 -pedantic 标志,从而强制使用C++98 模式。但是,您需要使用此工具链重新编译您使用的每个 C++ 库(不过理论上 C 库应该可以工作)。

请注意,在标准兼容模式下编译并不能保证您能够使用那个时代的编译器编译您的程序。那些黑暗时期的 C++ 编译器很少符合标准。您可能想选择一个具体的编译器并直接检查所有内容。

【讨论】:

    猜你喜欢
    • 2015-11-06
    • 2018-10-09
    • 2014-01-18
    • 2016-02-26
    • 2017-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多