提前返回

在之前的例子中,我们使用组合器显式地处理了错误。另一种处理这种情况的方式是结合使用 match 语句和提前返回

也就是说,如果发生错误,我们可以简单地停止执行函数并返回错误。对于某些人来说,这种代码形式更容易阅读和编写。考虑一下之前例子的这个版本,使用提前返回重写:

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

至此,我们已经学会了使用组合器和提前返回来显式地处理错误。虽然我们通常希望避免 panic,但显式地处理我们所有的错误是繁琐的。

在下一节中,我们将介绍 ?,用于我们只需要 unwrap 而不可能会导致 panic 的情况。