update ch02-00-guessing-game-tutorial.md

This commit is contained in:
xiaohulu 2018-08-25 15:59:38 +08:00
parent 6fd6cc554e
commit 1f7662e555

View File

@ -132,7 +132,7 @@ let foo = 5; // immutable
let mut bar = 5; // mutable
```
> 注意:`//` 语法开始一个持续到的注释。Rust 忽略注释中的所有内容,将在第三章中详细介绍注释。
> 注意:`//` 语法开始一个注释,持续到行尾。Rust 忽略注释中的所有内容,将在第三章中详细介绍注释。
让我们回到猜猜看程序中。现在我们知道了 `let mut guess` 会引入一个叫做 `guess` 的可变变量。等号(`=`)的右边是 `guess` 所绑定的值,它是 `String::new` 的结果,这个函数会返回一个 `String` 的新实例。[`String`][string]<!-- ignore --> 是一个标准库提供的字符串类型,它是 UTF-8 编码的可增长文本块。
@ -161,7 +161,7 @@ io::stdin().read_line(&mut guess)
`read_line` 的工作是,无论用户在标准输入中键入什么内容,都将其存入一个字符串中,因此它需要字符串作为参数。这个字符串参数应该是可变的,以便 `read_line` 将用户输入附加上去。
`&` 表示这个参数是一个 **引用***reference*它允许多处代码访问同一处数据而无需在内存中多次拷贝。引用是一个复杂的特性Rust 的一个主要优势就是安全而简单的操纵引用。完成当前程序并不需要了解如此多细节。现在,我们只需知道它像变量一样,默认是不可变的。因此,需要写成 `&mut guess` 而不是 `&guess` 来使其可变。(第四章会更全面的解释引用。)
`&` 表示这个参数是一个 **引用***reference*它允许多处代码访问同一处数据而无需在内存中多次拷贝。引用是一个复杂的特性Rust 的一个主要优势就是安全而简单的操纵引用。完成当前程序并不需要了解如此多细节。现在,我们只需知道它像变量一样,默认是不可变的。因此,需要写成 `&mut guess` 来使其可变,而不是 `&guess`。(第四章会更全面的解释引用。)
### 使用 `Result` 类型来处理潜在的错误
@ -258,7 +258,7 @@ You guessed: 6
记住,*crate* 是一个 Rust 代码包。我们正在构建的项目是一个 **二进制 crate**,它生成一个可执行文件。 `rand` crate 是一个 **库 crate**,库 crate 可以包含任意能被其他程序使用的代码。
Cargo 对外部 crate 的运用是其真正闪光的地方。在我们使用 `rand` 编写代码之前,需要修改 *Cargo.toml* 文件,引入一个 `rand` 依赖。现在打开这个文件并在底部的 `[dependencies]` 片段标题之下添加:
Cargo 对外部 crate 的运用是其真正闪光的地方。在我们使用 `rand` 编写代码之前,需要修改 *Cargo.toml* 文件,引入一个 `rand` 依赖。现在打开这个文件并在底部的 `[dependencies]` 片段标题之下添加:
<span class="filename">文件名: Cargo.toml</span>