【发布时间】:2015-06-12 00:11:42
【问题描述】:
对可能是保留周期的情况感到困惑?
我明白如果
class Object-A {
var b: Object-B }
和
class Object-B {
var a: Object-A
]
那么上面的设计很糟糕,因为如果你这样做了
var a = Object-A()
var b = Object-B()
a.b = b
b.a = a
然后这会导致两个强引用相互指向的保留循环。
但如果出现以下情况呢?
class Object-A {
var b: Object-B
}
class Object-B {
var randomArrayProperty: [Object-B]
}
你试着去做
var a = Object-A()
var b = Object-B()
a.b = a
b.randomArrayProperty.append(a)
这也是一个保留周期吗?
【问题讨论】:
-
考虑:数组是否保留其内容
标签: ios swift memory-management memory-leaks retain-cycle