各路大神,请指教啊
func printIntNum(add: (Int, Int) -> Int, a: Int, b: Int) {
println("num = (add(a,b))")
}
这个函数中参数 add该怎么理解,在外部调用时,既可以用一个闭包block直接实现,还可以用另外一个函数去代替,该怎么理解???
这是一件事情的两个说法,函数类型作函数参数,就是把函数作为参数传进去,既可以传匿名函数,也可以传别的函数。
闭包特指匿名函数中,可以访问外侧函数的变量。
这段代码没有特殊含义,只是为了演示下这种语法。
函数类型作函数参数的作用一般是回调,用来传入自定义的代码,或者事件处理。
闭包可以使用更多的上下文,你可以随时访问这段的变量
func printIntNum(add: (Int, Int) -> Int, a: Int, b: Int) {
println("num = (add(a,b))")
}
printIntNum函数有3个参数,第一个参数为一个接受两个int类型参数返回值为int的函数,第二个参数为int,第三个参数也为int
函数体内就是使用这3个参数(一个函数和两个int)进行运算
有什么不明白可以评论我