Update ch5-06.md

返回的是一个函数,而不是返回的这个函数被调用后的返回值
This commit is contained in:
Acaibrid 2024-02-05 01:32:21 +08:00 committed by GitHub
parent b8d7c32434
commit 8df9c1211c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -13,7 +13,7 @@ strings.Map(func(r rune) rune { return r + 1 }, "HAL-9000")
<u><i>gopl.io/ch5/squares</i></u> <u><i>gopl.io/ch5/squares</i></u>
```Go ```Go
// squares返回一个匿名函数。 // squares返回一个匿名函数。
// 该匿名函数每次被调用时都会返回下一个数的平方 // 该匿名函数每次被调用时都会返回下一个数的平方的函数
func squares() func() int { func squares() func() int {
var x int var x int
return func() int { return func() int {
@ -23,10 +23,11 @@ func squares() func() int {
} }
func main() { func main() {
f := squares() f := squares()
fmt.Println(f()) // "1" // () 函数调用符号
fmt.Println(f()) // "4" fmt.Println(f()()) // "1"
fmt.Println(f()) // "9" fmt.Println(f()()) // "4"
fmt.Println(f()) // "16" fmt.Println(f()()) // "9"
fmt.Println(f()()) // "16"
} }
``` ```