From 9bc6b8a9bd4ba2599047b6fdbe749ab526937ff9 Mon Sep 17 00:00:00 2001 From: Deshi Xiao Date: Fri, 11 May 2018 03:58:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=8A=E5=87=BD=E6=95=B0=E7=AD=BE=E5=90=8D?= =?UTF-8?q?=E6=94=B9=E6=88=90=E5=A3=B0=E6=98=8E=EF=BC=8C=E6=9B=B4=E7=AC=A6?= =?UTF-8?q?=E5=90=88=E8=AF=AD=E5=A2=83=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ch04-03-slices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ch04-03-slices.md b/src/ch04-03-slices.md index 3594b96..668667f 100644 --- a/src/ch04-03-slices.md +++ b/src/ch04-03-slices.md @@ -8,7 +8,7 @@ 这里有一个小的编程问题:编写一个获取一个字符串并返回它在其中找到的第一个单词的函数。如果函数没有在字符串中找到一个空格,就意味着整个字符串是一个单词,所以整个字符串都应返回。 -让我们考虑一下这个函数的签名: +让我们考虑一下这个函数的声明: ```rust,ignore fn first_word(s: &String) -> ? @@ -93,7 +93,7 @@ fn main() { 这个程序编译时没有任何错误,而且在调用 `s.clear()` 之后使用 `word` 也不会出错。这时 `word` 与 `s` 状态就完全没有联系了,所以 `word `仍然包含值 `5`。可以尝试用值 `5` 来提取变量 `s` 的第一个单词,不过这是有 bug 的,因为在我们将 `5` 保存到 `word` 之后 `s` 的内容已经改变。 -我们不得不时刻担心 `word` 的索引与 `s` 中的数据不再同步,这是冗余且容易出错的!如果编写这么一个 `second_word` 函数的话,管理索引这件事将更加容易出问题。它的签名看起来像这样: +我们不得不时刻担心 `word` 的索引与 `s` 中的数据不再同步,这是冗余且容易出错的!如果编写这么一个 `second_word` 函数的话,管理索引这件事将更加容易出问题。它的声明看起来像这样: ```rust,ignore fn second_word(s: &String) -> (usize, usize) {