learning closure | IMPORTANT (revisit)
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
module main
|
||||
|
||||
go 1.27.0
|
||||
@@ -0,0 +1,20 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
func fib() func() int {
|
||||
a, b := 0, 1
|
||||
return func() int {
|
||||
a, b = b, a+b
|
||||
return b
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
f := fib()
|
||||
for x := f(); x < 100; x = f() {
|
||||
fmt.Println(x)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user