defer的用法

baminahuxxf · · 1031 次点击
defer: 1. 搭配匿名函数的时候且defer使用的变量不是defer匿名函数参数的时候,defer使用的是变量的地址的拷贝。 2. 其它情况都是在定义defer的时候,使用的是变量的值的拷贝 具体可以打印两个i的地址,是不一样的。
#4
更多评论
polaris
社区,需要你我一同完善!
```go defer func() { fmt.Println(i) }() ``` 这样才是 1
#1
Go的函数是值传递,defer调用的函数也是一样 关于defer,可以看下这篇 https://studygolang.com/topics/9070
#2