首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >了解NSZombie消息

了解NSZombie消息
EN

Stack Overflow用户
提问于 2012-04-19 16:36:49
回答 2查看 111关注 0票数 0

我在Xcode4.2中启用了nszombie。(来自产品->editScheme)

我收到了这样的信息:

代码语言:javascript
复制
-[buttons respondsToSelector:]: message sent to deallocated instance 0x48ae50

我确实有buttons类,但我看不出这条消息到底有什么问题。

我能从NSZombie获得更多吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-19 16:39:36

此特定消息意味着buttons实例(在0x48ae50)已被释放(也称为released)。因此,通过尝试向nothing发送respondsToSelector:消息(请记住,实例已被取消分配),它会抛出一个错误。

试着在触发它的地方附近设置一个断点,看看为什么……(现在,您的buttons对象最有可能的地址是0x0)

在大多数(如果不是所有的)情况下,这与一些错误的内存管理有关;对象释放得太快,在必要时没有保留,等等……;-)

票数 0
EN

Stack Overflow用户

发布于 2012-04-19 16:39:45

问题是释放了一个类型为buttons的对象,然后调用了它的respondsToSelector:方法,该对象位于地址0x48ae50。

如果你在没有NSZombies的情况下运行,你的应用程序就会崩溃。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10224444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档