Go 语言函数作为实参
Go 函数
Go 语言可以很灵活的创建函数,并作为另外一个函数的实参。以下实例中在定义的函数中初始化一个变量,该函数仅仅是为了使用内置函数 math.sqrt(),实例为:
实例
package main
import (
"fmt"
"math"
)
func main(){
/* 声明函数变量 */
getSquareRoot := func(x float64) float64 {
return math.Sqrt(x)
}
/* 使用函数 */
fmt.Println(getSquareRoot(9))
}
以上代码执行结果为:
3
Go 函数
文人墨客
函数作为参数传递,实现回调。
package main import "fmt" // 声明一个函数类型 type cb func(int) int func main() { testCallBack(1, callBack) testCallBack(2, func(x int) int { fmt.Printf("我是回调,x:%d\n", x) return x }) } func testCallBack(x int, f cb) { f(x) } func callBack(x int) int { fmt.Printf("我是回调,x:%d\n", x) return x }