首页> 基础笔记 >GoLang基础学习 >函数 函数

Golang闭包的介绍和使用方法

作者:小萝卜 2023-04-06 浏览 208

简介基本介绍:闭包就是一个函数和与其相关的引用环境组合的一个整体(实体)

介绍

基本介绍:闭包就是一个函数和与其相关的引用环境组合的一个整体(实体)

案例演示:

package main
import (
	"fmt"
	"strings"
)

//累加器
func AddUpper() func (int) int {
	var n int = 10 
	return func (x int) int {
		n = n + x
		return n
	}
}

func main() {
	
	//使用前面的代码
	f := AddUpper()
	fmt.Println(f(1))// 11 
	fmt.Println(f(2))// 13
	fmt.Println(f(3))// 16

}


对上面代码的说明和总结

1)  AddUpper是一个函数,返回的数据类型是   fun (int) int

2)闭包的说明返回的是一个匿名函数,但是这个匿名函数引用到函数外的  n ,因此这个匿名函数就和 n形成一个整体,构成闭包。

3)大家可以这样理解:闭包是类,函数是操作,n是字段。函数和它使用到       n构成闭包。

4)当我们反复的调用  f函数时,因为  n是初始化一次,因此每调用一次就进行累计。

5)我们要搞清楚闭包的关键,就是要分析出返回的函数它使用(引用)到哪些变量,因为函数和它引用到的变量共同构成闭包。

 

很赞哦! (0)

文章评论

    高端网站建设