开发者

Xcode Difference between debug and release

What are the differences between debug and release builds for a Cocoa application? I know the debug version contains addi开发者_运维问答tional information for debugging but what else is different?


I quote

"The biggest difference between these is that: In a debug build the complete symbolic debug information is emitted to help while debugging applications and also the code optimization is not taken into account. While in release build the symbolic debug info is not emitted and the code execution is optimized. Also, because the symbolic info is not emitted in a release build, the size of the final executable is lesser than a debug executable.

One can expect to see funny errors in release builds due to compiler optimizations or differences in memory layout or initialization. These are ususally referred to as Release - Only bugs :)

In terms of execution speed, a release executable will execute faster for sure, but not always will this different be significant."

Courtesy of google and user mcdeeiis http://haacked.com/archive/2004/02/14/difference-between-debug-vs-release-build.aspx

This is a pretty solid explanation for all programming languages


The release version is more optimized for better performance and smaller size.

Also from personal practice I can say that it's useful to turn on more warnings in release configuration to know which methods are not used, which methods don't have declaration where signed/unsigned are being compared as well as other useful stuff.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜