【发布时间】:2015-03-29 08:50:22
【问题描述】:
我对 Go 还是很陌生,我正在尝试掌握 panic 函数。
到目前为止,我一直在使用这种类似的语法来处理程序中的错误:
func Find(i int) (item, error) {
// some code
if (not found) {
return nil, errors.New('Not Found')
}
// if found:
return myItem, nil
}
然后我偶然发现了panic 函数。我很难理解它。是否有可能摆脱 return 语句中的 error 并做这样的事情?
func Find(i int) item {
// some code
if (not found) {
panic('Not found')
}
return myItem
}
如果是,调用函数时出现错误如何处理?
非常感谢
【问题讨论】:
-
blog.golang.org/defer-panic-and-recover。在这种情况下,不要使用它。它仅适用于特殊的“世界着火了”的情况。
标签: go