我是新手,遇到了一組我不明白的括號。在下面的代碼中,我使用了一個基本的 defer 語句來打印恐慌的輸出。為了使代碼正常工作,我必須在關閉花括號的函數結束后添加一個打開和關閉括號。顯然我沒有正確理解一些東西。我認為它上面的兩行是函數的主體是錯誤的嗎?如果它們是函數的主體,那么它之后的括號有什么作用。如果他們不是身體,那么有人可以解釋這里發生了什么嗎?我在沒有括號的情況下得到的錯誤是:# command-line-arguments./goTemplate.go:14: syntax error: argument to go/defer must be function call.package mainimport "fmt"func main(){ defer func() { str := recover() fmt.Println(str) }() fmt.Println("Hello, World") panic("PANIC")}
- 1 回答
- 0 關注
- 203 瀏覽
添加回答
舉報
0/150
提交
取消