diff --git a/src/ch06-01-defining-an-enum.md b/src/ch06-01-defining-an-enum.md index 4710ded..2105aee 100644 --- a/src/ch06-01-defining-an-enum.md +++ b/src/ch06-01-defining-an-enum.md @@ -158,7 +158,7 @@ enum Option { {{#rustdoc_include ../listings/ch06-enums-and-pattern-matching/no-listing-06-option-examples/src/main.rs:here}} ``` -`some_number` 的类型是 `Option`。`some_char` 的类型是 `Option`,这(与 `some_number`)是一个不同的类型。因为我们在 `Some` 成员中指定了值,Rust 可以推断其类型。对于 `absent_number`,Rust 需要我们指定 `Option` 整体的类型,因为编译器只通过 `None` 值无法推断出 `Some` 成员保存的值的类型。这里我们告诉 Rust 希望 `absent_number` 是 `Option` 类型的。 +`some_number` 的类型是 `Option`。`some_char` 的类型是 `Option`,是不同于`some_number`的类型。因为我们在 `Some` 成员中指定了值,Rust 可以推断其类型。对于 `absent_number`,Rust 需要我们指定 `Option` 整体的类型,因为编译器只通过 `None` 值无法推断出 `Some` 成员保存的值的类型。这里我们告诉 Rust 希望 `absent_number` 是 `Option` 类型的。 当有一个 `Some` 值时,我们就知道存在一个值,而这个值保存在 `Some` 中。当有个 `None` 值时,在某种意义上,它跟空值具有相同的意义:并没有一个有效的值。那么,`Option` 为什么就比空值要好呢?