我遇到了这个我不明白的Swift代码.什么是被分配的navigationCallback?什么是[unowned self]
?如果我能在Objective-C中看到相同的例子,我想我会更好地理解这一点.
navigationCallback = { [unowned self] in previousNavigationCallback?() if self.state != .Canceled { callback() } }
matt.. 6
什么是被分配的navigationCallback?
花括号中的东西构成一个匿名函数.它就像Objective-C中的一个块.
什么是
[unowned self]
?
in
匿名函数捕获列表中前面的方括号中的东西.它通过引入未self
保留的匿名函数来防止保留周期.unowned
就像assign
Objective-C(非ARC weak
)中的财产政策一样.在Objective-C中,你通常会做弱强舞,以便做类似的事情.
什么是被分配的navigationCallback?
花括号中的东西构成一个匿名函数.它就像Objective-C中的一个块.
什么是
[unowned self]
?
in
匿名函数捕获列表中前面的方括号中的东西.它通过引入未self
保留的匿名函数来防止保留周期.unowned
就像assign
Objective-C(非ARC weak
)中的财产政策一样.在Objective-C中,你通常会做弱强舞,以便做类似的事情.