分类 Golang 下的文章 - MemoryCloud Blog
首页
关于
推荐
Airport
SVG_
Gif_
API
搜 索
1
资源控制器之RS
53 阅读
2
扬帆起航
52 阅读
3
Cgroups资源限制
50 阅读
4
Kubernetes节点与 Pod 亲和性
49 阅读
5
Golang的原子属性
39 阅读
Default
Golang
Cloud Compute
Kubernetes
EveryDay
登录
/
注册
搜 索
标签搜索
原创
Kennedy
累计撰写
19
篇文章
累计收到
1
条评论
首页
栏目
Default
Golang
Cloud Compute
Kubernetes
EveryDay
页面
关于
推荐
Airport
SVG_
Gif_
API
用户登录
登录
注册
找到
6
篇与
相关的结果
2023-09-19
Go函数闭包特性
期望有个函数每次调用一次的返回值的结果值都是增加一次之后的值示例代码 抛出异常var local int //全局变量 func myaotu() int { local += 1 return local } func main() { for i := 0; i < 5; i++ { fmt.Println(myaotu()) } } 1.被迫声明全局变量 2.全局变量不能轻易归零既不要全局变量也要可以归零;函数内定义函数,函数内部不能访问其他函数的局部变量,所以在内部定义函数访问外层函数局部变量func myaotu() int { local := 0 return func() int { local += 1 //访问另外一个函数(外)的局部变量 return local }() //由于外层返回值是int,内层必须调用才能正常返回local } func main() { for i := 0; i < 5; i++ { fmt.Println(myaotu()) } } 1 1 1 1 1 //每次调用外层都会把local清零,内层再增加,所以不变改进:func myaotu() func() int { local := 0 return func() int { local += 1 return local } } func main() { nextfunc := myaotu() for i := 0; i < 5; i++ { fmt.Println(nextfunc()) } } 1 2 3 4 5 nextfunc1 := myaotu() //从新引用时会清零
2023年09月19日
20 阅读
0 评论
0 点赞
1
2