objective-c – 在发送消息之前检查有效的委托对象

objective-c – 在发送消息之前检查有效的委托对象,第1张

概述我正在尝试在Objective-C中实现委托模式,但是我有时会在调用委托时遇到Bad Access异常.这似乎是由代表被释放引起的. Apple不建议保留代表. 在尝试发送消息之前,如何检查我的代理是否仍然有效? 如果代表有可能被设置者释放,那么你的设计就会出现问题.您应该只对寿命比委托本身更短的对象设置委托.例如,在子视图/控制器上设置委托是很好的,因为子视图/控制器的寿命比调用者短. AFAI 我正在尝试在Objective-C中实现委托模式,但是我有时会在调用委托时遇到Bad Access异常.这似乎是由代表被释放引起的. Apple不建议保留代表.

在尝试发送消息之前,如何检查我的代理是否仍然有效?

解决方法 如果代表有可能被设置者释放,那么你的设计就会出现问题.您应该只对寿命比委托本身更短的对象设置委托.例如,在子视图/控制器上设置委托是很好的,因为子视图/控制器的寿命比调用者短.

AFAIK,没有可靠的方法来检测对象是否已经被释放.

总结

以上是内存溢出为你收集整理的objective-c – 在发送消息之前检查有效的委托对象全部内容,希望文章能够帮你解决objective-c – 在发送消息之前检查有效的委托对象所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1071054.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存