Go 中闭包的底层原理
1. 什么是闭包? 一个函数内引用了外部的局部变量,这种现象,就称之为闭包。 例如下面的这段代码中,adder 函数返回了一个匿名函数,而该匿名函数中引用了 adder 函数中的局部变量 sum ,那这个函数就是一个闭包。 package main import "fmt" func adder() func(int) int { sum := 0 return func(x int) int { sum += x return sum } } 而这个闭包中引用的外部局部变量并不会随着 adder 函数的返回而被...