Merge pull request #828 from Rainanxu/main

修复一个语句错误  ch06-01-defining-an-enum.md
This commit is contained in:
KaiserY 2024-12-01 23:41:26 +08:00 committed by GitHub
commit d60b448952
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

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