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

2025-06-25 05:15:14

Go 即不要求 err 为 nil 时,result 是非 nil。

也不要求 result 为 非 nil 时,err 为 nil。

所以理论上,Go 存在 如下四种情况 值, nilnil, errnil, nil值, err而 Rust 的 Resut 只存在两种情况。

ok 或 err 有人可能会说,只要做好规定,让开发者不这么写就可以了。

你说的对,但,能从语言层面确定的,为什么要靠人来限制。

你能保证你永远不犯错吗? 你连团队里面是不是有人给 err _ 了都保证不了。

人,才是最难保证的一环…。

Rust 使用 Result 的错误处理方式与 Golang 使用 error 的方式有什么本质区别?
广告位810*200
相关阅读
真的没有人觉得2k是一个很尴尬的分辨率吗?

真的没有人觉得2k是一个很尴尬的分辨率吗?

以pc游戏为主的国内市场压根不应该认为QHD(2560*14...

2025-06-26
如何评价华为最新长焦专利技术?能否颠覆手机长焦摄影的目前限制?

如何评价华为最新长焦专利技术?能否颠覆手机长焦摄影的目前限制?

泻药,我就是这个项目的研发,新品目前已发布所以也不用遮掩,模...

2025-06-26
为什么现在知乎有一种j***a运行速度很慢,很吃***的论调?

为什么现在知乎有一种j***a运行速度很慢,很吃***的论调?

本人是J***a技术面试官,自夸下,应该还算资深,有8,9年...

2025-06-26
大部分语言都用尖括号<>表示泛型,为什么golang要标新立异用中括号?

大部分语言都用尖括号<>表示泛型,为什么golang要标新立异用中括号?

最新的设计文档里面对这一块做了一个解释。 Why not ...

2025-06-26
如何评价b站数码区up主 “大狸子切切里”?

如何评价b站数码区up主 “大狸子切切里”?

攻击长相是最没意义的。 这个姑娘无论如何也是高于平均水平。 ...

2025-06-26