预编译头文件是否有助于重建?

时间:2010-06-01 20:16:27

标签: visual-studio msbuild precompiled-headers rebuild

我阅读了一些有关预编译标题的问题,但未找到直接答案。

我通常会重建整个Visual Studio 2010解决方案。

我的解决方案中的一个项目是C ++ / CLI项目。

我认为在该项目中使用预编译头会提高编译速度。

经过一些实验,似乎使用预编译的头只会减慢重建过程。

预编译头只能帮助那些没有完全清理旧文件的构建吗?

修改

例如,假设我的StdAfx.h只有一行:

#include <string>

1 个答案:

答案 0 :(得分:4)

取决于!

对于Rebuilds,它是在编译预编译头文件的额外成本与不必为每个源代码重新解析这些头文件的速度之间进行权衡。

如果您有许多源文件在预编译头中使用了许多相同的标头,您应该会看到一个好处。否则,您应该看到几乎没有加速,或者更糟糕的是,由于携带整体标题集和拥挤的全局命名空间的开销而导致速度减慢。