[NSCFType XXX]: unrecognized selector sent to instance 0x4d80b00'

大意就是NSCFType这个东西是没有在文档中提到的内部类,我想给你发送消息的类已经被释放掉了,NSCFType这个东西被存放在他原来的位置上,所以会这样提示

http://blog.csdn.net/kingmari/article/details/7738071

http://www.bwxxkj.com/a/jishuzhongxin/shoujikaifa/2012/0629/109138.html

http://blog.csdn.net/yanxiaoqing/article/details/7264876


当程序崩溃的时候怎么办

http://article.ityran.com/archives/1006

http://article.ityran.com/archives/1143


注意:“this class is not key value coding-compliant for the key XXX”的错误经常都是由于你装载这个nib,但是里面引用的一些熟悉可能不存在。特别是当你在代码中移除了outlet属性后,但是你却没有在nib中移除这个连接。


EXC_BAD_ACCESS错误。那意味着这个app有内存管理的问题。


NSAssert()//是一个叫断言的东西 

断言通常只在调试编译下有用的,因此他们对发布到app store的最终的app是没有运行时的影响的。


假如崩溃在main.m里面,就可以设置全局异常断点(Exception Breakpoint)。

.在异常断点开启的状态下,你也没有得到得到有用的信息。在这种情况下,多继续几次运行这个app,或者在调试提示后面输入“po $eax”命令。


在调试窗口中使用的命令(lldb)

p 打印变量的地址

po 打印实际的对象,而不是地址

c 一个简短的继续指令,和点击继续按钮一个效果

注意:这个“po”命令对于检查你的对象是非常有用的。你可以在程序暂停在调试器的时候,或者在设置一个断点的时候,或者在崩溃的时候,使用这个命令。你需要确定的是这个方法当前在调用堆栈里面是高亮的,否则这个调试器将找不到这个变量。




zombie

你不应该一直启用zombie objects。因为这个工具将永远不会释放内存,只是简单标记一下这个内存是不死的,你最终将会在某个时候耗尽所有的内存。因此你应该在排查内存相关的错误的时候才开启zombie objects,其他时候应该关闭它


静态分析工具(static analyzer tool)

不要忘记静态分析工具(static analyzer tool),这个工具将会捕获更多的错误。假如你是一个初学者,推荐你开启它。你可以在Build Settings界面上为你的工程设置:

Setting the static analyzer to run on each build.


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值