gpt4 book ai didi

error-handling - 在 Erlang 中标记错误有好处吗?

转载 作者:行者123 更新时间:2023-12-01 10:42:27 25 4
gpt4 key购买 nike

在 Erlang 中,标记成功的返回值有好处(例如 Erlang Programming Rules and Conventions 中所示),但标记失败值有好处吗?具体来说,file 中使用的标记样式是否有好处?包,其中错误标记为 error 原子?例如,file:open发生错误时返回{error, Reason},其中Reason是一个更具描述性的原子,但是否需要error标签你可以直接返回 Reason 原子吗?我目前能看到的唯一优势是标签将 Reason 原子记录为错误,但我觉得错误原子是 self 描述的,而且这个优势被必须“拆箱”所有 future 所抵消此函数的错误值。

最佳答案

不仅仅是 file 模块用 error 原子标记错误;相反,这是一种非常常见的 Erlang 做法。好处是任何想要检查错误而不用担心原因的代码都可以匹配 {error, _Reason} 并采取适当的操作,而如果它匹配 Reason 本身——顺便说一句,它并不总是一个原子——这种匹配会因调用的内容而异,而且在代码中也很难看到。

关于error-handling - 在 Erlang 中标记错误有好处吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29022155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com