在 Go 中,闭包是一种函数,它可以访问定义它的函数作用域中的变量。这意味着一个闭包可以访问它外部的变量,即使它外部的函数已经返回。

实现方式:

package main

import "fmt"

func main() {
    x := 0
    increment := func() int {
        x++
        return x
    }
    fmt.Println(increment())
    fmt.Println(increment())
}

上面的代码使用了一个匿名函数来定义闭包,该函数内部访问了外部的变量 x,并通过调用 increment 函数来改变 x 的值。