swift懒加载不需要使用weak unowned

swift懒加载的闭包内部使用self,不会导致循环引用,原因是因为swift的懒加载闭包是非逃逸闭包@noescape
什么是@noescape@escaping
非逃逸闭包(@noescape): 在这个函数结束前闭包被调用
逃逸闭包(@escape): 在这个函数结束后闭包才被调用
非逃逸闭包内使用self是不会导致循环引用,例如SnapKit使用

self.view.addSubview(box)
box.backgroundColor = .green
box.snp.makeConstraints { (make) -> Void in
   make.width.height.equalTo(50)
   make.center.equalTo(self.view)
}

你可能感兴趣的:(swift懒加载不需要使用weak unowned)