当前位置:当前位置: 首页 >

Rust 使用 Result 的错误处理方式与 Golang 使用 error 的方式有什么本质区别?

日期:2025-06-20 16:15:18

我记得看过,Go的设计要求是err!=nil的时候,前面的值部分是一个无效的值,就是说值可以是空值也可以不是。

我自己在写代码的时候,也遵循这种规范,同时因为我基本都用Named Result方式(不想每次return都得考虑哪个空哪个不空),所以以下代码可以更好的说明,为什么前值是无效的: type Info struct { A string B int C bool } func do() (rsp Info, err error) { a, err := doA() if err != nil { return // 等价于 {…。

Rust 使用 Result 的错误处理方式与 Golang 使用 error 的方式有什么本质区别?