是否会在Swift中考虑闭包?

时间:2015-07-23 06:22:31

标签: swift closures strong-references didset

我理解willsetdidset的目的我不确定他们是否被视为封闭。

如果它们是闭包,那么以下代码不应该产生强大的参考周期吗?

var myProperty : Int = 0 {
    didSet { self.callMyMethod() }
}

1 个答案:

答案 0 :(得分:4)

不,他们不是关闭。您可以将其视为一种无法直接访问的特殊功能;只有在属性发生变化时才会调用它。 (该函数名为myapp.MyStruct.myProperty.didset;您可以在调试器中看到这一点。)