functest(a int,b int)int{ // defer 先把行后面的代码存放到一个栈中 // 栈的特点是先进后出 所有后进的先执行 defer fmt.Println("a=",a) // 3 defer fmt.Println("b=",b) // 2 a += 30// 此处 defer把代码存入栈中以后 下面对变量进行操作不会改变栈中的数据 b += 40 var sum int = a + b fmt.Println("sum=",sum) // 1 return sum }