Go 拦截围棋中的错误和恐慌

Go 拦截围棋中的错误和恐慌,go,error-handling,panic,Go,Error Handling,Panic,我创建一个CLI只是为了了解更多关于Go的信息。是否有可能截获所有错误和恐慌,这样我就可以有一个独特的地方来处理它们,并将其格式化并打印到标准输出 例如: 而不是使用: x, err := doSomething() if err != nil { errorHandler.Handler(err) } 我可以在执行任何操作之前使用初始化代码来拦截所有错误: errorHandler.New() 然后我就可以“忽略”所有错误: x, _ := doSomething() 这在围棋中是一

我创建一个CLI只是为了了解更多关于Go的信息。是否有可能截获所有错误和恐慌,这样我就可以有一个独特的地方来处理它们,并将其格式化并打印到标准输出

例如:

而不是使用:

x, err := doSomething()
if err != nil {
  errorHandler.Handler(err)
}
我可以在执行任何操作之前使用初始化代码来拦截所有错误:

errorHandler.New()
然后我就可以“忽略”所有错误:

x, _ := doSomething()

这在围棋中是一种糟糕的做法吗?

错误只是围棋中的值。就像函数返回字符串时无法截获一样,也无法截获错误。

但不能将错误转换为恐慌。是的。这是不好的做法,确实很糟糕。返回错误是有原因的,不处理错误将导致缺陷。