1、匿名函数:
go语言支持匿名函数,可作为闭包。匿名函数是一个内联语句或者表达式,匿名函数的优越性在于可以直接使用函数内的变量。代码如下:
package main
import "fmt"
func getSequence() func() int{
i = 0
return func() int {
i+=1
return i
}
}
func main(){
//函数i=0
nextNumber := getSequence()
//调用nextNumber函数,i变量自增1并返回
fmt.Println(nextNumber())
fmt.Println(nextNumber())
fmt.Println(nextNumebr())
//创建新的函数nextNumber1
nextNumber1 := getSequence()
fmt.Println(nextNumber1())
fmt.Println(nextNumber1())
}
//结果:1 2 3 1 2