- 闭包是什么
很简单就是一段代码,同理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