从闭包调用的方法中的self的上下文



方法sampleMethod()在同一个类中从一个带有self (self?.sampleMethod())弱引用的闭包调用。现在在sampleMethod()中使用的自我上下文是什么?它会是一个软弱的自我还是一个坚强的自我?

由于sampleMethod()方法被成功调用,默认情况下,它将在其主体内使用强self引用。

你可以考虑这一行

self?.sampleMethod()
这样的

if let s = self {
    s.dynamicType.sampleMethod(s)()
}

在这里你只是将实例的强引用传递给相关的类方法

相关内容

  • 没有找到相关文章

最新更新