我是新手,遇到了一组我不明白的括号。在下面的代码中,我使用了一个基本的 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 关注
- 169 浏览
添加回答
举报
0/150
提交
取消