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