琐碎但寻找确认我正确理解:
如果我们有一个简单的闭包:
let closure = { [weak self] in
self?.doSomething()
}
我们是否需要担心方法本身内的弱/强自我?
func doSomething() {
self.classString = "some new string"
// the self in this case will come from the weak self in the closure?
}
我理解的内容即使从闭包中调用也是不必要的:
func doSomething() {
weak var weakSelf = self
weakSelf.classString = "some new string"
}
答案 0 :(得分:2)
不,我们不必担心,因为方法没有捕获任何东西。