【问题标题】:VisualStudio 2010 - no more automatic precompiled headers?VisualStudio 2010 - 没有更多的自动预编译头文件?
【发布时间】:2014-12-03 13:09:03
【问题描述】:

VisualStudio6 中有一个编译器选项 /YX 可以自动生成预编译头文件。不需要 stdafx.h/cpp 文件,PCH 文件是从带有或不带有 #pragma hdrstop 指令的 CPP 标头自动生成的。

Visual Studio 2010 中似乎缺少自动 PCH (/YX)。只有 /Yc(创建)或 /Yu(使用)可用。

有人知道怎么找回吗?

干杯

【问题讨论】:

    标签: c++ visual-studio-2010 visual-studio


    【解决方案1】:

    /YX 已被弃用。您必须改用 /Yc 和 /Yu。

    Microsoft states: "如果您从构建配置中删除 /YX 并将其替换为任何内容,则可以加快构建速度。"

    基本上没有节省时间,因为 /YX 经常猜错。所以增加的开销只是一种浪费。

    【讨论】:

      【解决方案2】:

      这是removed in Visual Studio 2005。我将不得不挖掘原因,但我怀疑并行编译等功能不适用于自动预编译头文件。

      BTW 2010 是 Visual Studio 的旧版本。如果你想使用最兼容(和更快)的编译器,你应该使用 Visual Studio 2013。Professional version 是免费的,尽管它现在被称为“社区”。它支持 C++ 和以前版本中专业版的所有功能。

      您将从并行编译支持中获得比自动预编译头文件更快的编译。 2010 年和 2013 年在速度、合规性、库支持和调试方面存在巨大差异。

      更新

      我找到了announcement,原因是自动预编译头文件并没有比不使用它们带来任何改进。使用 /Yc 创建一次然后使用 /Yu 重用它们更快(也更稳定)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-05-10
        • 2010-11-20
        • 2012-07-09
        • 1970-01-01
        • 1970-01-01
        • 2012-03-08
        相关资源
        最近更新 更多