gpt4 book ai didi

iphone - 回调的代表数组不安全?

转载 作者:行者123 更新时间:2023-12-01 18:23:16 24 4
gpt4 key购买 nike

我了解在 iOS 的委托(delegate)模式中,您希望对委托(delegate)的引用是弱的,但是如果我有这个:

@property (nonatomic, weak) NSMutableArray *delegates;

在这个数组中是
id<myDelegateCallback>

Array 对里面的项目有很强的保留。

我是在具有此属性的类中分配/初始化数组还是将数组设置为另一个类拥有的实例?

或者这不是委托(delegate)模式的一个很好的实现?我知道我可以使用通知等,但想知道这是否真的可以在没有任何 ARC 问题的情况下工作。

最佳答案

您只能有一个指定的委托(delegate)对象,而不是一组委托(delegate)。一些类有一个委托(delegate)和一个符合独特协议(protocol)的“数据源”,但这仅对需要从某个指定位置获取其内容的对象有意义。

但是如果你想通知几个监听对象发生了一些事情,考虑使用 NSNotification注册于 NSNotificationCenter .缺点是没有正式的或声明的协议(protocol)方法供监听器遵循(如果有任何问题,编译器也会提示)。

Here's a related question with more useful information .

关于iphone - 回调的代表数组不安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15800739/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com