Visual Studio中的debug和release版本的区别
展开全部
dubug是有调试符号的. 还带有很多不需要的多余信息. 就是方便你调试. 你在调试和逆向工程的工具里打开debug版本的二进制文件很容易搞懂程序内容. 因为原函数名都在. 而且编译的时候基本不优化, 你原来写的什么样的结构生成的二进制就是什么样的结构.
release版本编译的时候是经过优化的. 有的时候编译器会更改你的程序逻辑和算法让程序在输出同样的结果的前提下运行更快. 而且有可能几个函数被合并在一起了(像自动inline一样). 而且release版本的二进制文件没有调试符号. 用第三方工具调试/逆向难度相对前者更大.
release版本编译的时候是经过优化的. 有的时候编译器会更改你的程序逻辑和算法让程序在输出同样的结果的前提下运行更快. 而且有可能几个函数被合并在一起了(像自动inline一样). 而且release版本的二进制文件没有调试符号. 用第三方工具调试/逆向难度相对前者更大.
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询