c++ - 为什么在重建解决方案后构建速度更快?

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

我正在使用 Visual Studio IDE 处理一个包含数百万行代码和数百个文件的大型 C++ 项目。

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

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

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

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

构建后构建速度缓慢的原因是什么?重建后速度变快的原因是什么?

最佳答案

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

关于c++ - 为什么在重建解决方案后构建速度更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25137988/

相关文章:

visual-studio - 在visual studio中如何将所有.libs包含在一个文件夹中

C++ 程序编译在 Ubuntu 中失败,但在 MacOS 中运行

c++ - glmapbufferOES 和 glunmapbuffer 在 opengl-es 2.0 中未声明

c++ - C++ (visual studio) 中同一符号的多重定义

c++ - VS 2010 中的 SFML 错误

c - 使用结构获取垃圾数据以进行重新分配

c++ - 为什么我们需要 C++ 中的 spaceship <=> 运算符?

c++ - const auto std::initializer_list Clang 和 GCC 的区别

c# - 读取 C# 中的 JS 变量/将 JS 变量转发到 visual studio 性能测试?

visual-studio - 验证 web.config 的工具