下面代码会输出什么?
package main
import (
"fmt"
)
func main() {
defer fmt.Printf("main %d\n", func1())
}
func func1() (sum int) {
sumA := 10
sumB := 10
sum = sumA + sumB
defer func() {
fmt.Printf("func1 first %d\n", sum)
}()
defer fmt.Printf("func1 second %d\n", sum)
return sum * 10
}
输出:
func1 second 20
func1 first 200
main 200