Go支持匿名函数,如果我们某个函数只希望执行一次,可以考虑使用匿名函数,匿名函数也可以实现多次调用。
在定义匿名函数时直接调用
package main
import (
"fmt"
)
func main() {
res := func(a int, b int) int {
return a + b
}(10, 20)
fmt.Println("res=", res)
}
输出结果:
res= 30
将匿名函数赋给一个变量(函数变量),在通过该变量来调用匿名函数
package main
import (
"fmt"
)
func main() {
a := func(a int, b int) int {
return a + b
}
res := a(10,20)
fmt.Println("res=", res)
}
输出结果:
res= 30
如果将匿名函数赋给一个全局变量,那么匿名函数,就成为全局匿名函数,可以在程序有效。
package main
import (
"fmt"
)
var fun1 = func(a int, b int) int {
return a + b
}
func main() {
res := fun1(20, 30)
fmt.Println("res=", res)
输出结果:
res= 50
原文:https://www.cnblogs.com/adong2021/p/14757772.html