swfit autoclosure (闭包)

  • 闭包是什么
    很简单就是一段代码,同理lambdas ,底层是什么 目前理解就通C语言的函数指针吧,这个指针可以保存一个函数的地址,在必要的时候可以调用此函数的语句
  • 用它干什么
    回调,传值
  • 实现
    func logIfTrue(_ predicate: () -> Bool) {
    if predicate() {
    print("True")
    }
    }

logIfTrue({return 2 > 1})
logIfTrue({2 > 1})
logIfTrue{2 > 1}

func logIfTrue(_ predicate: @autoclosure () -> Bool) {
if predicate() {
print("Truekkk")
}
}

logIfTrue(2 > 1)

打印:
True
True
True
Truekkk

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容