diff --git a/src/advance/errors.md b/src/advance/errors.md index 4d67e2d8..7716f104 100644 --- a/src/advance/errors.md +++ b/src/advance/errors.md @@ -513,7 +513,7 @@ fn render() -> Result { 上面的代码会报错,原因在于 `render` 函数中的两个 `?` 返回的实际上是不同的错误:`env::var()` 返回的是 `std::env::VarError`,而 `read_to_string` 返回的是 `std::io::Error`。 -为了满足 `render` 函数的签名,我们就需要将 `env::VarError` 和 `io::Error` 归一化为同一种错误类型。要实现这个目的有两种方式: +为了满足 `render` 函数的签名,我们就需要将 `env::VarError` 和 `io::Error` 归一化为同一种错误类型。要实现这个目的有三种方式: - 使用特征对象 `Box` - 自定义错误类型