anonymous function
什么是匿名函数
顾名思义,匿名函数就是没有名字的函数
如果某个函数只是希望使用1次,那么这时我们就可以考虑匿名函数
匿名函数的使用方式
1,在定义匿名函数的时候就直接调用,这种方式匿名函数只能用1次(用的多)
package main
import (
"fmt"
)
func main() {
result1 := func(a, b int) int {
return a + b
}(10, 20) //定义完之后立马调用
fmt.Println(result1)
}
2,将匿名函数赋值给一个变量(该变量就是函数变量了),再通过该变量调用匿名函数
package main
import (
"fmt"
)
func main() {
//将匿名函数赋值给一个变量(该变量就是函数类型的变量),再通过该变量调用匿名函数
//sub等价于匿名函数
sub := func(a, b int) int {
return a - b
}
fmt.Println(sub(10, 20))//直接调用sub就是调用这个匿名函数了
}
3, 如何让1个匿名函数可以在整个程序中有效呢?将匿名函数给一个全局变量就好了
package main
import (
"fmt"
)
var myfn = func(a, b int) int {
return a * b
}
func main() {
fmt.Println(myfn(10, 20))
}