首页 > 代码库 > VS中生成、清理项目、调试、开始执行(不调试)、Debug 和 Release等之间的区别

VS中生成、清理项目、调试、开始执行(不调试)、Debug 和 Release等之间的区别

一、生成和重新生成

“生成”的时候只对你改动过的文件重新生成没有改动过的文件不会重新生成;

“重新生成”是对所有的文件都重新生成。

以cpp为例当你只改动某些.cpp之类的文件的时候可以用生成省了编译没有改动的那些些文件的时间;但是改动了某些.h之类的文件最好用重新生成,因为有可能能有些文件包含.h文件也需要重新编译

选择生成或生成解决方案,将只编译自上次生成以来更改过的那些些项目文件和组件

注意
如果解决方案中包括多个项目,则生成命令将变成生成解决方案。

选择重新生成解决方案,将首先清理解决方案然后生成所有项目文件和组件。


二、清理项目和清理解决方案


选择清理解决方案将删除所有中间文件和输出文件,只留下项目文件和组件文件之后可以从这些文件生成中间文件和输出文件的新实例

清理项目,会清理项目生成的ilk、pdb、exe等文件。

各种格式的文件的作用参考http://jingyan.baidu.com/article/19020a0afc3629529d284218.html


 三、调试和开始执行(不调试)

启动调试。就是先生成解决方案再执行的。

开始执行(不调试):直接执行,只得到最终结果。

这两种方法的区别是,前者需要加载调试符号,允许在运行过程中中断,并单步执行,还可以对某些变量进行监控,甚至改变其代码并重新计算;后者仅仅编译并运行,无法对程序进行调试,仅适合在需要查看运行效果时使用。

 

 四、Debug和Release

Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。

Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 
Debug 和 Release 的真正区别,在于一组编译选项。

具体区别请参考http://www.cnblogs.com/JemBai/archive/2009/01/13/1374805.html