package main import "fmt" func GetSum() func(int) int { var sum int = 0 return func(x int) int { sum = sum + x return sum } } func add(num1 int, num2 int) int { defer fmt.Println(num1) //3 defer fmt.Println(num2) //进入栈中 栈的特点是 先进后出2 var sum int = num1 + num2 fmt.Println(sum) //先执行1 return sum //4 } func main() { f := GetSum() fmt.Println(f(1)) fmt.Println(f(2)) fmt.Println(f(3)) fmt.Println(add(30, 60)) }