Swift 5.7:现在‘自我保护’够了吗



在Swift 5.7:之前,我曾经写过这样的东西

// random async completion block    
{ [weak self] in
guard let weakSelf = self else { return }
weakSelf.someString = ""
}

现在我更喜欢这样写:

// random async completion block    
{ [weak self] in
guard let self else { return }
self.someString = ""
}

但我能在没有任何问题的情况下做到这一点吗,比如保留周期?

谢谢

是的,因为guard let self其他&guard let weakSelf = self与相同

为了避免你使用的保留周期较弱,这是的另一件事

最新更新