From 9ba4337c141b5987484fa8b672cada530aa99b04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A1=BB=E8=AF=AD?= <131151317+Rainanxu@users.noreply.github.com> Date: Sun, 1 Dec 2024 19:40:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=80=E4=B8=AA=E8=AF=AD?= =?UTF-8?q?=E5=8F=A5=E9=94=99=E8=AF=AF=20=20ch06-01-defining-an-enum.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ch06-01-defining-an-enum.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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` 为什么就比空值要好呢?