|
|
|
@ -8,4 +8,4 @@ Rust 对可靠性的执着也延伸到了错误处理。错误对于软件来说
|
|
|
|
|
|
|
|
|
|
Rust 将错误组合成两个主要类别:**可恢复错误**(*recoverable*)和 **不可恢复错误**(*unrecoverable*)。可恢复错误通常代表向用户报告错误和重试操作是合理的情况,比如未找到文件。不可恢复错误通常是 bug 的同义词,比如尝试访问超过数组结尾的位置。
|
|
|
|
|
|
|
|
|
|
大部分语言并不区分这两类错误,并采用类似异常这样方式统一处理他们。Rust 并没有异常。相反,对于可恢复错误有 `Result<T, E>` 值,以及 `panic!`,它在遇到不可恢复错误时停止程序执行。这一章会首先介绍 `panic!` 调用,接着会讲到如何返回 `Result<T, E>`。此外,我们将探讨决定是尝试从错误中恢复还是停止执行时的注意事项。
|
|
|
|
|
大部分语言并不区分这两类错误,并采用类似异常这样方式统一处理他们。Rust 并没有异常,但是,有可恢复错误 `Result<T, E>` ,和不可恢复(遇到错误时停止程序执行)错误 `panic!`。这一章会首先介绍 `panic!` 调用,接着会讲到如何返回 `Result<T, E>`。此外,我们将探讨决定是尝试从错误中恢复还是停止执行时的注意事项。
|
|
|
|
|