iOS Swift 到 Objective-C 如何将弱引用传递给数组?
iOS Swift to Objective-C how to pass weak references to arrays?
我想了解 Swift 和 objective-c 如何处理传递 nil 引用。我知道我不能将 nil 添加到 Objective-C 可变数组。
在以下情况下如何处理 nil:
- Swift class 是传递给 Objective-C 的 弱引用 观察者
class
- Objective-C 将对 Swift class 的引用保存在一个数组中
- Swift class 被释放,它的弱引用变为 nil
- Objective-C 现在有一个数组,其中一个元素指向 nil
是否 Objective-C class 继续运行,或者在尝试遍历数组并获得 nil 引用时崩溃?
除非您使用 NSPointerArray
,否则当您将对象添加到数组时,该数组将持有对它的强引用,从而防止对象被释放。
只有在对象从数组中移除,或者数组本身被释放后,对象才有资格被释放。
这意味着数组不能保留空引用。
我想了解 Swift 和 objective-c 如何处理传递 nil 引用。我知道我不能将 nil 添加到 Objective-C 可变数组。
在以下情况下如何处理 nil:
- Swift class 是传递给 Objective-C 的 弱引用 观察者 class
- Objective-C 将对 Swift class 的引用保存在一个数组中
- Swift class 被释放,它的弱引用变为 nil
- Objective-C 现在有一个数组,其中一个元素指向 nil
是否 Objective-C class 继续运行,或者在尝试遍历数组并获得 nil 引用时崩溃?
除非您使用 NSPointerArray
,否则当您将对象添加到数组时,该数组将持有对它的强引用,从而防止对象被释放。
只有在对象从数组中移除,或者数组本身被释放后,对象才有资格被释放。
这意味着数组不能保留空引用。