mirror of
https://github.com/gnu4cn/rust-lang-zh_CN.git
synced 2026-08-19 04:33:27 +08:00
@@ -89,7 +89,7 @@ fn main() {
|
||||
|
||||
**清单 4-8**:存储调用 `first_word` 函数的结果,然后修改 `String` 的内容
|
||||
|
||||
这个程序可在没有任何报错下编译,并将在我们在调用 `s.clear()` 后使用 `word` 如此行事。因为 `word` 完全没有连接 `s` 的状态,所以 `word` 仍然包含值 `5`。我们本可将值 `5` 与变量 `s` 一起使用来提取出第一个单词,但这将是个 bug,因为自从我们在 `word` 中保存 `5` 以来,`s` 的内容已经发生了变化。
|
||||
这个程序可在没有任何报错下编译,并将在我们在调用 `s.clear()` 后使用 `word` 如此行事。因为 `word` 完全没有连接 `s` 的状态,所以 `word` 仍然包含值 `3`。我们本可将值 `5` 与变量 `s` 一起使用来提取出第一个单词,但这将是个 bug,因为自从我们在 `word` 中保存 `3` 以来,`s` 的内容已经发生了变化。
|
||||
|
||||
不得不担心 `word` 中的索引与 `s` 中的数据不同步,既乏味又容易出错!若我们还要编写 `second_word` 函数,管理这些索引就会更加脆弱。其签名就必须如下:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user