Debug和Release区别

转载 2015年07月08日 16:35:52
一、Debug 和 Release 的区别 

        Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。

 Debug 和 Release 的真正区别,在于一组编译选项。 
Debug 版本   
参数       含义   
/MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)   
/Od 关闭优化开关   
/D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对assert函数)   
/ZI   
创建 Edit and continue(编辑继续)数据库,这样在调试过程中如果修改了源代码不需重新编译   
GZ 可以帮助捕获内存错误  

   
Release 版本 参数含义   
/MD /ML 或 /MT 使用发布版本的运行时刻函数库   
/O1 或 /O2 优化开关,使程序最小或最快   
/D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)   
/GF 合并重复的字符串,并将字符串常量放到只读内存,防止被修改  


Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合,编译器只是按照预定的选项行动。 


cocos2dx: win32工程Release 和 Debug版本使用的标准库

1、 Debug版本: /MDd 定义 _DEBUG、_MT 和 _DLL,并使此应用程序使用特定于多线程和 DLL 的调试版本的运行库。  它还会让编译器将库名称 MSVCRTD.lib 放...
  • tianxiawuzhei
  • tianxiawuzhei
  • 2015年06月11日 15:01
  • 1985

NDK DEBUG方法

NDK DEBUG方法 一、JNI单步调试,Debug As Android Native Apllication 二、借用NDK-STACK调试工具...
  • a87b01c14
  • a87b01c14
  • 2014年11月25日 14:12
  • 2990

深入理解 Android NDK 编译

使用 CMake 进行Android NDK编译的原理 介绍 Android Studio 2.2 及以后的版本默认使用CMake进行 NDK 编译 , 其中最吸引人的地方是,...
  • d_o_n_g2
  • d_o_n_g2
  • 2017年07月31日 11:31
  • 421

Debug 和 Release 编译方式的本质区别

一、Debug 和 Release 编译方式的本质区别  Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得...
  • liuchangyu23
  • liuchangyu23
  • 2009年08月06日 23:59
  • 1211

cocos2dx: win32程序Release和debug版本:lua:print函数

cocos2dx: win32程序Release和debug版本:lua:print函数 1、如果发布的是Release版本,lua脚本中通过print(...)函数打印的 信息是看不到的...
  • tianxiawuzhei
  • tianxiawuzhei
  • 2015年06月12日 15:17
  • 2602

Debug与Release版本的区别详解

Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动。如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来。当...
  • ithzhang
  • ithzhang
  • 2012年05月17日 10:54
  • 80927

切身体会,debug与release的区别

不知道大家用vs打包的时候会不会特意改为release版本后打包。     我最近改了一个程序,打包的时候没注意,用debug打的包,结果现场反馈说对图像进行处理的时候比上一个版本的程序慢一些。我就...
  • qxy919
  • qxy919
  • 2016年06月20日 23:55
  • 2252

Debug和Release有什么区别

Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M)。至于是否需要DLL支持,主要看你采用的编译选项。如果是基于ATL的,则Debug和Release版本对DLL的要求差...
  • chenhu_doc
  • chenhu_doc
  • 2006年07月17日 15:30
  • 21343

关于Debug和Release

不管在什么平台上软件都有debug和release版本的差别,虽然本质上都是-O -g这些选项的差别,对应与开发着debug和release更多的概念上的差别,debug是面向自己的release是面...
  • westboy20082008
  • westboy20082008
  • 2015年04月13日 16:15
  • 512

Cocos Creator使用VS Code调试方法

最近公司项目用Cocos做H5,我也就突然有用Cocos来做一个ios的手游的想法,Unity用惯了,想拓展下。结果么,用的我吐槽一大堆。首先就是Cocos的调试,太不方便了,看官方文档,也是讲的一点...
  • duotemplar
  • duotemplar
  • 2017年08月22日 19:39
  • 4919
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Debug和Release区别
举报原因:
原因补充:

(最多只允许输入30个字)