Update ch12-03-improving-error-handling-and-modularity.md

This commit is contained in:
Zehua Zou 2021-02-04 22:38:04 +08:00 committed by GitHub
parent c3b095ea4d
commit cbf8fe962a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -116,7 +116,7 @@ fn parse_config(args: &[String]) -> Config {
>
> 由于其运行时消耗,许多 Rustacean 之间有一个趋势是倾向于避免使用 `clone` 来解决所有权问题。在关于迭代器的第十三章中,我们将会学习如何更有效率的处理这种情况,不过现在,复制一些字符串来取得进展是没有问题的,因为只会进行一次这样的拷贝,而且文件名和要搜索的字符串都比较短。在第一轮编写时拥有一个可以工作但有点低效的程序要比尝试过度优化代码更好一些。随着你对 Rust 更加熟练,将能更轻松的直奔合适的方法,不过现在调用 `clone` 是完全可以接受的。
我们更新 `main``parse_config` 返回的 `Config` 实例放入变量 `config` 中,并将之前分别使用 `search` 和 `filename` 变量的代码更新为现在的使用 `Config` 结构体的字段的代码。
我们更新 `main``parse_config` 返回的 `Config` 实例放入变量 `config` 中,并将之前分别使用 `query` 和 `filename` 变量的代码更新为现在的使用 `Config` 结构体的字段的代码。
现在代码更明确的表现了我们的意图,`query` 和 `filename` 是相关联的并且他们的目的是配置程序如何工作。任何使用这些值的代码就知道在 `config` 实例中对应目的的字段名中寻找他们。