繁体   English   中英

Visual Studio:当我不使用预编译头文件时,“构建解决方案”和“重建解决方案”有什么区别

[英]Visual Studio: what is the difference between 'Build Solution' and 'Rebuild Solution' when i do not use precompiled headers

我试图了解 Visual Studio 中的 2 种内置类型(构建与重建解决方案)之间的区别。 据我所知,当我使用预编译头文件时,只要这些文件中的代码保持不变,简单构建的头文件就不会编译预编译头文件,但“重建”将始终编译它们。 那么当我不使用预编译头文件时会发生什么? 我注意到简单构建仍然比重建更快,究竟是什么来减少编译时间(c++)?

使用Build通常只会重新构建由于您对代码所做的更改而需要重新构建的文件。

如果您在项目/解决方案中创建两个文件a.cppb.cpp ,然后第一次构建,则两者都将被编译(成a.objb.obj ),然后链接成一个.exe文件。

如果您随后a.cpp和 select Build进行更改,则仅a.cpp将被编译(到a.obj )并且a.obj和已经存在的b.obj将被链接到一个.exe文件中。

如果您改为 select Rebuild ,即使您没有对b.cpp进行任何更改,也会在链接之前重新编译b.cpp

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM