【发布时间】:2015-07-23 06:22:30
【问题描述】:
我了解willset 和didset 的用途,我不确定它们是否被视为闭包。
如果它们是闭包,那么下面的代码不应该产生一个强引用循环吗?
var myProperty : Int = 0 {
didSet { self.callMyMethod() }
}
【问题讨论】:
标签: swift closures strong-references didset
我了解willset 和didset 的用途,我不确定它们是否被视为闭包。
如果它们是闭包,那么下面的代码不应该产生一个强引用循环吗?
var myProperty : Int = 0 {
didSet { self.callMyMethod() }
}
【问题讨论】:
标签: swift closures strong-references didset
不,它们不是闭包。你可以把它想象成一种不能直接访问的特殊类型的函数;它只会在属性更改时调用。 (函数名为myapp.MyStruct.myProperty.didset;您可以在调试器中看到。)
【讨论】: