C++ 为什么在重建解决方案后生成速度更快?
我使用VisualStudioIDE进行一个大型的C++项目,有数百万行代码和数百个文件。 我注意到,每次在对多个文件进行一些小的更改后构建解决方案时,每次后续构建都会花费越来越多的时间 一旦我重建了解决方案,尽管重建花费了相当长的时间,但每个后续构建都比以前的构建预重建快得多 我假设编译器可能会将多个obj文件放在一个文件中。每次我们进行更改和构建解决方案时,都必须将大的obj分解为小的obj,从而增加更多的obj文件。由于添加了越来越多的obj文件,这种链接方式会很慢 然而,我找不到任何支持我幻想的东西。。当然,我无法在我的同事面前证明这一点C++ 为什么在重建解决方案后生成速度更快?,c++,visual-studio-2010,visual-studio,visual-studio-2012,C++,Visual Studio 2010,Visual Studio,Visual Studio 2012,我使用VisualStudioIDE进行一个大型的C++项目,有数百万行代码和数百个文件。 我注意到,每次在对多个文件进行一些小的更改后构建解决方案时,每次后续构建都会花费越来越多的时间 一旦我重建了解决方案,尽管重建花费了相当长的时间,但每个后续构建都比以前的构建预重建快得多 我假设编译器可能会将多个obj文件放在一个文件中。每次我们进行更改和构建解决方案时,都必须将大的obj分解为小的obj,从而增加更多的obj文件。由于添加了越来越多的obj文件,这种链接方式会很慢 然而,我找不到任何支持
构建后的缓慢生成的原因是什么?为什么在重建后它会变得很快?
< p>我没有答案来解释为什么会发生这种情况,但是我可以告诉你,ObjC++文件没有被融合在一起。< /P>也许是本地C++还是托管的?在native中,我怀疑这很可能是由于预编译的头。试着删除/重建它,看看是否能得到同样的效果。我从未使用过托管C++。而且@willl它一直都在发生,而不仅仅是在断电之后。我们也有同样的问题,重建需要10分钟的时间,在头文件中做一些小的更改构建也需要30分钟