函数可以作为其它函数的参数进行传递,然后在其它函数内调用执行,一般称之为回调。
代码示例:
package main
import "fmt"
func main() {
// 回调函数示例
// 使用函数Add作为函数AddOne的参数,然后在AddOne中对函数Add进行调用
y := AddOne(2, Add)
fmt.Println("y:", y)
}
// 求和函数
func Add(a int, b int) int {
return a + b
}
// 增1函数
func AddOne(x int, f func(a int, b int) int) int {
return f(x, 1)
}
运行结果:
y: 3