Cocoa应用程序的调试和发布版本之间有什么区别?我知道调试版本包含调试的其他信息,但还有什么不同?
我引用
“这些之间的最大区别在于:在调试版本中,发出完整的符号调试信息以帮助调试应用程序,同时不考虑代码优化 . 在发布版本中,不会发出符号调试信息和代码此外,由于在发布版本中未发出符号信息,因此最终可执行文件的大小小于调试可执行文件的大小 .
由于编译器优化或内存布局或初始化的差异,可以预期在发布版本中会看到有趣的错误 . 这些通常被称为发布 - 只有错误:)
在执行速度方面,发布可执行文件肯定会执行得更快,但并不总是这种差异很大 . “
礼貌谷歌和用户mcdeeiis http://haacked.com/archive/2004/02/14/difference-between-debug-vs-release-build.aspx
这是所有编程语言的非常可靠的解释
发布版本更加优化,以获得更好的性能和更小的尺寸 .
另外从个人实践中我可以说,在发布配置中打开更多警告以了解哪些方法未被使用,哪些方法没有声明签名/未签名的比较以及其他有用的东西是有用的 .
2 回答
我引用
“这些之间的最大区别在于:在调试版本中,发出完整的符号调试信息以帮助调试应用程序,同时不考虑代码优化 . 在发布版本中,不会发出符号调试信息和代码此外,由于在发布版本中未发出符号信息,因此最终可执行文件的大小小于调试可执行文件的大小 .
由于编译器优化或内存布局或初始化的差异,可以预期在发布版本中会看到有趣的错误 . 这些通常被称为发布 - 只有错误:)
在执行速度方面,发布可执行文件肯定会执行得更快,但并不总是这种差异很大 . “
礼貌谷歌和用户mcdeeiis http://haacked.com/archive/2004/02/14/difference-between-debug-vs-release-build.aspx
这是所有编程语言的非常可靠的解释
发布版本更加优化,以获得更好的性能和更小的尺寸 .
另外从个人实践中我可以说,在发布配置中打开更多警告以了解哪些方法未被使用,哪些方法没有声明签名/未签名的比较以及其他有用的东西是有用的 .