C++ Release和Debug相比,具体优化了那些地方?

 我来答
478617
2014-08-17 · TA获得超过875个赞
知道小有建树答主
回答量:725
采纳率:100%
帮助的人:94.4万
展开全部
1变量,Debug版如果你不初始化变量,变量自动初始化为0xCC,删除动态分配的内存时将其赋值为0xCD。Release版不对变量初始化,删除动态分配的内存时也不对内存中的数据进行处理。
2内存分配的长度,debug版以32bytes为单位分配,release版以8bytes为单位。比如你定义int a[4]; 在Debug版里分配的内存长度是32byte,而在Release版里则分配16byte。所以在debug版里如果你定义a[4],却在程序里使用a[4] = xxx不会出问题,但是在elease版里就会出问题.
3变量的类型,Release版里对于经常使用的变量会自动使其变成寄存器变量,以加快程序运行速度。
4ASSERT, VERIFY, TRACE..........调试宏 ,只有在调试模式下才有代码。
5编译后的程序,Debug版包含了源代码以便于调试,Release版则没有包含。
暂时就想到这么多
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式