mirror of
https://github.com/gnu4cn/rust-lang-zh_CN.git
synced 2024-12-25 20:30:34 +08:00
Refining Ch06.
This commit is contained in:
parent
9e7b57f06b
commit
bd23125ee6
@ -2,6 +2,5 @@
|
||||
|
||||
**Enums and Pattern Matching**
|
||||
|
||||
在本章,将会对 *枚举(enumerations)* 进行审视,枚举也被当作 *enums*。枚举实现了通过列举出类型可能的 *变种(variants)*,来定义出一个类型。这里会首先定义并使用一个枚举,来展示枚举能如何将意义和数据编码起来。接下来,就会探索一个特别有用、名为 `Option` 的枚举,该枚举表示了某个值既可以是某事物,也可以什么也不是。随后就会看看在 `match` 表达式中的模式匹配,是怎样令到根据枚举中不同的值,而运行各异的代码容易起来的。最后,将会讲到 `if let` 结构是怎样成为另一种处理代码中枚举值的、便利而简洁的习惯用法的。
|
||||
|
||||
许多语言都有枚举这一特性,不过在各个语言中的枚举能力是不同的。Rust 的枚举与那些函数式语言,诸如 F#、OCaml 及 Haskell 等中的 *代数数据类型(algebraic data types)* 最为相似。
|
||||
在本章中,我们将介绍 *枚举,enumerations*,也称为 *枚举,enums*。枚举允许咱们,通过枚举出其可能的 *变种,variants*,来定义某种类型。首先,我们将定义并使用一个枚举,以展示枚举如何与数据一起,编码意义。接下来,我们将探究一个名为 `Option` 的特别有用的枚举,他表示某个值可以是某物,也可以是无。然后,我们将了解 `match` 表达式中的模式匹配,如何使我们可以轻松地针对枚举的不同值,运行不同代码。最后,我们将介绍 `if let` 结构,怎样成为咱们代码中,处理枚举的另一方便简洁的习惯用法。
|
||||
|
Loading…
Reference in New Issue
Block a user