go-learning/tour_of_go/l4/function-closures.go
2025-08-30 19:14:01 +01:00

21 lines
240 B
Go

package main
import "fmt"
func adder() func(int) int {
sum := 0
return func(x int) int {
sum += x
return sum
}
}
func main() {
pos, neg := adder(), adder()
for i := 0; i < 10; i++ {
fmt.Println(
pos(i), neg(-2*i),
)
}
}