为什么在重新构建解决方案后构建会更快

Why build happens faster after doing a rebuild of Solution?

本文关键字:构建 解决方案 为什么 新构建      更新时间:2023-10-16

我正在使用Visual Studio IDE来完成一个大型c++项目,其中包含数百万行代码和数百个文件。

我注意到每次在跨多个文件进行一些小更改后构建解决方案时,每次后续构建都要花费越来越多的时间。

一旦我重新构建解决方案,尽管重新构建花费了相当多的时间,但每次后续构建都比重建前的构建快得多。

我假设可能是编译器将多个obj文件放入一个。每次我们进行更改和构建解决方案时,它都必须将大objj分解为小objj,从而增加更多的obj文件数量。这种方式的链接会很慢,因为添加了越来越多的obj文件。

然而,我找不到任何证据来支持我的幻想。当然也无法在同事面前证明。

构建后缓慢的原因是什么?为什么它在重建后变得很快?

我不知道为什么会发生这种情况,但我可以告诉你,obj文件不会融合在一起。