返回介绍

错误处理

发布于 2024-10-12 12:35:57 字数 904 浏览 0 评论 0 收藏 0

Go 语言主要的设计准则是:简洁、明白,简洁是指语法和 C 类似,相当的简单,明白是指任何语句都是很明显的,不含有任何隐含的东西,在错误处理方案的设计中也贯彻了这一思想。

在 C 语言里面是通过返回 -1 或者 NULL 之类的信息来表示错误,但是对于使用者来说,不查看相应的 API 说明文档,根本搞不清楚这个返回值究竟代表什么意思,比如:返回 0 是成功,还是失败,而 Go 定义了一个叫做 error 的类型,来显式表达错误。在使用时,通过把返回的 error 变量与 nil 的比较,来判定操作是否成功。例如 os.Open 函数在打开文件失败时将返回一个不为 nilerror 变量

func Open(name string) (file *File, err error)

下面这个例子通过调用 os.Open 打开一个文件,如果出现错误,那么就会调用 log.Fatal 来输出错误信息:

f, err := os.Open("filename.ext")
if err != nil {
    log.Fatal(err)
}

类似于 os.Open 函数,标准包中所有可能出错的 API 都会返回一个 error 变量,以方便错误处理,这个小节将详细地介绍 error 类型的设计,和讨论开发 Web 应用中如何更好地处理 error

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文