没有名字的函数
func(){
fmt.Println("匿名函数")
}()
直接进行调用,通常只能使用一次。
赋值调用,将匿名函数赋值给某个某个函数变量,则可以调用多次
f:=func(){
fmt.Println("匿名函数2")
}
f()
func(a,b int){
fmt.Printf("带参数的匿名函数 %d %d\n",a,b)
}(1,3)
res1:=func(a,b int) int {
return a+b
}(1,2)
fmt.Print(res1) //注意这里有匿名函数调用,所以是将匿名函数调用的结果赋值给res1
res2:=func(a,b int) int {
return a+b
}
fmt.Print(res2) //这里只是将匿名函数地址赋值给res2,因为函数类型是引用类型
Go语言支持函数式编程
原文:https://www.cnblogs.com/henryno12/p/12635023.html