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

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

时间: 2024-08-02 07:01:34

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

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository.如果采用原始直接打包放到lib目录的方式进行处理,便对项目的管理带来一些不必要的麻烦.例如版本升级后需要重新打包并,替换原有jar包等等一些额外的工作量和麻烦.为了避免这些不必要的麻烦,通常我们会通过Nexus搭建私有的仓库.下面着重介绍下怎么通过mvn命令将程序打包并发布到私有仓库Nexus中.

VS2008中生成DLL项目

创建项目 新建项目-> 选择Win32项目 输入项目名称,点击确定.在程序向导中选择下一步 选择DLL. 由于我想创建的是相对独立的DLL,所以不选择ATL和MFC. 点击完成. ? Main文件分析. 打开dllmain.cpp文件,这是DLL的入口文件,在这个文件里,可以在进程或者线程加载此文件时进行一些自己额外的处理. 添加自己的类. 右键点击项目,选择新建->类. 点击添加按钮. 输入类名,会自动生成.h文件和.cpp文件名.点击完成按钮. 打开MyClass1.h, 在类的外面添加自

Eclipse中手动清理项目缓存,

用过Eclipse或MyEclipse的小伙伴肯定遇到过这种情况: 代码出错后,在前台访问出问题.然后把代码改好,已经检查不到错误,可是项目在前台访问还是有问题. 这个时候,可能就是Eclipse/MyEclipse的缓存在做怪了.现在就看下如何清理缓存吧. Eclipse下: MyEclipse下: Clean之后,应该就好了. 然后在tomcat server上右键选择clean 2.浏览器清理缓存快捷键 Ctrl+shift+delete

【整理】Object-C中的属性(Property)的Setter:assign,copy,retain,weak,strong之间的区别和联系

iOS编程过程中,经常看到一些属性前面有些修饰符,比如copy,retain等. 这些关键字,是Object-C语言中,对于Property的setter. Mac官网: The Objective-C Programming Language – Declared Properties – Setter Semantics 中的解释是: Setter Semantics These attributes specify the semantics of a set accessor. They

SQL中inner join、left join、right join、outer join之间的区别

举个例子你就能知道了! A表(a1,b1,c1)      B表(a2,b2) a1   b1   c1       a2    b2 01   数学 95       01    张三 02   语文 90       02    李四 03   英语 80       04    王五 select A.*, B.* from A inner join B on(A.a1=B.a2) 结果是:  www.2cto.com a1   b1   c1       a2    b2 01   数学

Visual Studio中Debug与Release以及x86、x64、Any CPU的区别

Visual Studio中Debug与Release的区别: 在Visual Studio中,编译模式有2种:Debug与Release.这也是默认的两种方式,在新建一个project的时候,就已经存在这两种模式供选择. Debug通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序.      Release称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用. SO:      一般都是用Release来打包发布程序,因为Re

全面解析vue-cli生成的项目中使用其他库(js库、css库)

前言:最近有小伙伴问我,是不是用vue脚手架生成的项目就不能jquery了呢?显然,答案是否定的,必须能用.但是个人建议最好不要用了,用人家vue提供的不好嘛. 一.用vue-cli生成项目 1. vue init webpack-simple vue-jq 2. cd vue-jq 3. cnpm install 4. 使用git bash(只是为了方便) 5. package.json 中修改端口 --port 8088 6. npm run dev 二.构建项目结构,引入相关文件 目录结构

node-gyp 在此解决方案中一次生成一个项目。若要启用并行生成,请添加“/m”开关。

在此解决方案中一次生成一个项目.若要启用并行生成,请添加“/m”开关. MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”.要解决此问题, 1) 安装 .NET Framework 2.0 SDK: 2) 安装 Microsoft Visual Studio 2005:或 3) 如果将该组件安装到了 其他位置,请将其位置添加到系统 路径中. [G:\nodejs\moviesite\node_modules\bcrypt\build\

在.net core web项目中生成二维码

原文:在.net core web项目中生成二维码 1.添加QRCoder包引用 2. public IActionResult MakeQrCode()        { string url="https://www.baidu.com"; var generator = new QRCodeGenerator(); var codeData = generator.CreateQrCode(str,QRCodeGenerator.ECCLevel.M,true); var qrc