作為前輩,我最近才剛剛開始學習圍棋。這可能是我花了一些時間在上面的第 3 天。我已經處理這個錯誤幾個小時了,但我不知道出了什么問題。package mainimport "fmt"func main () { nextFib := fibGenerator(); fmt.Println(nextFib()); fmt.Println(nextFib()); fmt.Println(nextFib()); fmt.Println(nextFib()); fmt.Println(nextFib());}func fibGenerator () uint { var ( n uint = 0 back1 uint = 1 back2 uint = 0 ) _computeFib := func () uint { if n == 0 { n++ return 0 } else if n == 1 { n++ return 1 } fib := 1back + 2back // throws compile time error on this line 2back = 1back 1back = n n++ return fib } return _computeFib}這是它拋出的錯誤:語法錯誤:意外名稱,需要分號或換行符或}這可能很簡單,但由于我對 Go 的了解有限,我無法理解它。任何幫助,將不勝感激。
2 回答

犯罪嫌疑人X
TA貢獻2080條經驗 獲得超4個贊
撇開重構問題不談,請記住,go 中的變量必須以字母開頭,而不是數字開頭。back1
andback2
是有效的 go 變量,但1back
and2back
不是。請參閱https://golang.org/ref/spec#Identifiers。
- 2 回答
- 0 關注
- 350 瀏覽
添加回答
舉報
0/150
提交
取消