n会累加,相当于是一个全局变量


go闭包示例_全局变量

package main

import (
"fmt"
)

func AddUpper() func (int) int {
var n int = 10
return func (x int) int {
n = n + x
return n
}
}

func main(){
method := AddUpper()
fmt.Println(method(1))//11
fmt.Println(method(2))//13
fmt.Println(method(3))//16
}