defer func() {
fmt.Println(“Hello,world”)
}()
defer func(i int) {
fmt.Println(“%d”,i)
}(i)
defer func(i int) {
fmt.Println(“%d”,i)
}(0)
谢谢 ,回复的非常好!
defer func(i int) { fmt.Println(“%d”,i) }(0) 等价于:
func aa( i int){
fmt.Println('%d', i)
}
func main(){
defer aa(0)
}
就是说无论怎么改变i的值都会总是打印0.
#4
更多评论
可以看成
```
func aa() {
fmt.Println("Hello,world")
}
func main() {
defer aa()
}
```
#1