【发布时间】:2016-10-11 22:34:22
【问题描述】:
我正在尝试创建一个闭包来清除我的缓存,这两个都是实例变量。当我尝试调用 [unowned self] 时,我收到错误“'unowned may only be applied to class and class-bound protocol types, not (UIViewController) -> () -> UIViewController'”....我是不知道为什么要提出这个问题。在实例变量中调用 self 是否没有创建保留循环?如果是这样,为什么?先谢谢了,这里是相关代码sn-p
class UIViewController
{
var repostCache : [String : Bool] = [String : Bool]()
let clearRepostCache = { [unowned self] in
self.repostCache = [String : Bool]()
}
}
【问题讨论】:
-
你为什么不把这个属性变成一个函数?