Merge pull request #30 from usernameisnull/patch-8

Update ch06-01-defining-an-enum.md
This commit is contained in:
KaiserY 2017-05-02 19:50:34 -05:00 committed by GitHub
commit 43579356ef

View File

@ -33,7 +33,7 @@ let four = IpAddrKind::V4;
let six = IpAddrKind::V6; let six = IpAddrKind::V6;
``` ```
注意枚举的成员位于其标识符的命名空间中,并使用两个冒号分开。这么设计的益处是现在`IpAddrKind::V4`和`IpAddrKind::V6`是相同类型的:`IpAddrKind`。例如,接着我们可以一个函数来获取`IpAddrKind` 注意枚举的成员位于其标识符的命名空间中,并使用两个冒号分开。这么设计的益处是现在`IpAddrKind::V4`和`IpAddrKind::V6`是相同类型的:`IpAddrKind`。例如,接着我们可以定义一个函数来获取`IpAddrKind`
```rust ```rust
# enum IpAddrKind { # enum IpAddrKind {
@ -279,4 +279,4 @@ not satisfied
[docs]: https://doc.rust-lang.org/std/option/enum.Option.html [docs]: https://doc.rust-lang.org/std/option/enum.Option.html
总的来说,为了使用`Option<T>`值,需要编写处理每个成员的代码。我们想要一些代码只当拥有`Some(T)`值时运行,这些代码允许使用其中的`T`。也希望一些代码当在`None`值时运行,这些代码并没有一个可用的`T`值。`match`表达式就是这么一个处理枚举的控制流结构:它会根据枚举的成员运行不同的代码,这些代码可以使用匹配到的值中的数据。 总的来说,为了使用`Option<T>`值,需要编写处理每个成员的代码。我们想要一些代码只当拥有`Some(T)`值时运行,这些代码允许使用其中的`T`。也希望一些代码当在`None`值时运行,这些代码并没有一个可用的`T`值。`match`表达式就是这么一个处理枚举的控制流结构:它会根据枚举的成员运行不同的代码,这些代码可以使用匹配到的值中的数据。