go-learning/tour_of_go/l4/function-closures.go

21 lines
240 B
Go
Raw Normal View History

2025-08-30 18:14:01 +00:00
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),
)
}
}