https://songjiayang.gitbooks.io/go-basic-courses/content/ch6/error.html
本文档第二个例子,我试了一下,结果是 2,不是 4。本人版本go version go1.9.2 darwin/amd64。
package main
import (
"fmt"
)
func testDefer() (i int) {
defer func() {
fmt.Println(i)
i = 4
}()
return 2
}
func main() {
testDefer()
}