由xCode4里面设置NSZombieEnabled,解决EXC_BAD_ACCESS问题引出
2011-08-11 18:06
489 查看
“用NSZombieEnabled解决恼人的EXC_BAD_ACCESS错误”。
很实用的技巧,便拿来试验一下。
原文是在XCode3里面设置的,so在4里面完全找不到地方。stackoverflow搜一下,找到如下方法。
菜单里Product->EditScheme->Run->Environment Variables, 添加NSZombieEnabled,YES。
顺便发现方法2,Product->按住alt/option+鼠标点"Run...",之后同上。
如果你和我一样操作了,一定发现了:按下alt/option键之后菜单边了,同理,按下Ctrl键之后菜单也变了。
神奇ing!
顺便在Navigate看到一条”Fix next issue“,(按住Ctrl),原来XCode支持自动修复简单错误。
试验发现只要报错信息里有fix方法的,都能用Ctrl+Command+'修复。
扯远了,再回到最初的目的,试验EXC_BAD_ACCESS错误。故意删掉一个数组的retain部分,用了NSZombieEnabled的调试信息里多了一行,“*** -[__NSArrayI objectAtIndex:]: message sent to deallocated instance 0x700aba0”
很准确的定位到了objectAtIndex函数(因为这里的NSArray是空的)。
确实能省不少力气。
很实用的技巧,便拿来试验一下。
原文是在XCode3里面设置的,so在4里面完全找不到地方。stackoverflow搜一下,找到如下方法。
菜单里Product->EditScheme->Run->Environment Variables, 添加NSZombieEnabled,YES。
顺便发现方法2,Product->按住alt/option+鼠标点"Run...",之后同上。
如果你和我一样操作了,一定发现了:按下alt/option键之后菜单边了,同理,按下Ctrl键之后菜单也变了。
神奇ing!
顺便在Navigate看到一条”Fix next issue“,(按住Ctrl),原来XCode支持自动修复简单错误。
试验发现只要报错信息里有fix方法的,都能用Ctrl+Command+'修复。
扯远了,再回到最初的目的,试验EXC_BAD_ACCESS错误。故意删掉一个数组的retain部分,用了NSZombieEnabled的调试信息里多了一行,“*** -[__NSArrayI objectAtIndex:]: message sent to deallocated instance 0x700aba0”
很准确的定位到了objectAtIndex函数(因为这里的NSArray是空的)。
确实能省不少力气。
相关文章推荐
- IOS学习之设置NSZombieEnabled和MallocStackLogging解决EXC_BAD_ACCESS错误
- 如何解决奔溃问题--SIGABRT和EXC_BAD_ACCESS
- 使用NSZombie解决EXC_BAD_ACCESS问题
- 用NSZombieEnabled解决恼人的EXC_BAD_ACCESS错误
- 用NSZombieEnabled解决恼人的EXC_BAD_ACCESS错误
- 开发笔记 - 设置NSZombieEnabled调试EXC_BAD_ACCESS
- 设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误
- 设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误
- 设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误
- 用NSZombieEnabled解决恼人的EXC_BAD_ACCESS错误
- 用NSZombieEnabled解决恼人的EXC_BAD_ACCESS错误
- MallocStackLogging 的设置方法 查找 EXC_BAD_ACCESS 问题根源的方法
- 用NSZombieEnabled和MallocStackLogging解决恼人的EXC_BAD_ACCESS错误
- EXC_BAD_ACCESS出现解决问题
- 用NSZombieEnabled帮助解决EXC_BAD_ACCESS
- iOS 开发 解决EXC_BAD_ACCESS错误的一种方法--NSZombieEnabled(转)
- IOS开发(46)之设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误
- EXC_BAD_ACCESS(code=1问题的解决办法
- 设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误
- IOS开发(46)之设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误