Вопрос: Что такое замыкание (closure) и как оно захватывает переменные?
Go
Junior
Без компании
Вопрос: Что такое замыкание (closure) и как оно захватывает переменные?
Ответы
Замыкание — функция, которая захватывает переменные из внешней области видимости.
```go
package main
import "fmt"
func makeCounter() func() int {
n := 0
return func() int {
n++
return n
}
}
func main() {
c := makeCounter()
fmt.Println(c())
fmt.Println(c())
}
```