~$ 存档

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

分析的代码

package main

func test(a int) func(i int) int {
    return func(i int) int {
        a = a + i
        return a
    }
}

func main() {
    f := test(1)
    a := f(2)
    println(a)

    b := f(3)
    println(b)
}

代码比较简易,test函数产生一个闭包函数并返回,下面分析它的产生过程

test函数

posted on 2023-07-04 22:52  LuoTian  阅读(17)  评论(0编辑  收藏  举报