Rust 使用 Result 的錯(cuò)誤處理方式與 Golang 使用 error 的方式有什么本質(zhì)區(qū)別?
作者: 發(fā)布日期:2025-06-21 20:15:10
我記得看過(guò),Go的設(shè)計(jì)要求是err!=nil的時(shí)候,前面的值部分是一個(gè)無(wú)效的值,就是說(shuō)值可以是空值也可以不是。
我自己在寫(xiě)代碼的時(shí)候,也遵循這種規(guī)范,同時(shí)因?yàn)槲一径加肗amed Result方式(不想每次return都得考慮哪個(gè)空哪個(gè)不空),所以以下代碼可以更好的說(shuō)明,為什么前值是無(wú)效的: type Info struct { A string B int C bool } func do() (rsp Info, err error) { a, err := doA() if err != nil { return // 等價(jià)于 {…。









