欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

go语言笔记(四)匿名函数

程序员文章站 2023-12-21 21:34:58
...

go语言笔记(四)匿名函数

匿名函数

go支持匿名函数,如果某个函数只希望使用一次,可以考虑使用匿名函数。但匿名函数也可以实现多次调用。

使用方式

直接调用(一次性)

package main

import (
	"fmt"
	"reflect"
)


func main() {
	res := func(n1 int, n2 int) int {
		return n1 + n2
	}(10, 20)
	fmt.Println(res)
	fmt.Println(reflect.TypeOf(res))
}
/*
30
int
*/
//从结果可以看出,res此时只是被匿名函数运行后得到的整型结果赋值,因此是整型int

赋值给变量调用

package main

import (
	"fmt"
	"reflect"
)


func main() {
	res := func(n1 int, n2 int) int {
		return n1 + n2
	}//注意此处我们没有立即给函数赋予形参
	fmt.Println(res(10,20))
	fmt.Println(reflect.TypeOf(res))
}
/*
30
func(int, int) int
*/
//此时res是一个函数类型的变量,可以通过它多次对匿名函数进行调用!

在本案例中,我们是在main函数中将匿名函数赋值给了main中的局部变量res,作用域只包含main函数。

同样道理,我们也可以将匿名函数赋值给全局变量,这样我们就可以在全局调用匿名函数了。

上一篇:

下一篇: