拦截Go中的错误和恐慌

时间:2018-09-19 02:12:56

标签: go error-handling panic

我创建一个CLI只是为了学习更多有关Go的知识。是否可以拦截所有错误和紧急情况,所以我可以在一个唯一的位置处理它们,还可以对其进行格式化,并在打印后输出到stdout。

示例:

代替使用:

removeElement($element)

我可以在执行任何操作之前使用初始化代码来拦截所有错误:

removeElement($product)

然后我可以“忽略”所有错误:

x, err := doSomething()
if err != nil {
  errorHandler.Handler(err)
}

使用Go不好吗?

1 个答案:

答案 0 :(得分:2)

错误只是不断变化的价值。就像无法在函数返回字符串时拦截任何方法一样,也无法拦截错误。