Merge pull request #792 from will-2012/patch-2

Update ch07-03-paths-for-referring-to-an-item-in-the-module-tree.md
This commit is contained in:
KaiserY 2024-05-07 16:21:23 +08:00 committed by GitHub
commit 93075e4d42
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -102,7 +102,7 @@ Rust 选择以这种方式来实现模块系统功能,因此默认隐藏内部
我们可以通过在路径的开头使用 `super` ,从父模块开始构建相对路径,而不是从当前模块或者 crate 根开始。这类似以 `..` 语法开始一个文件系统路径。使用 `super` 允许我们引用父模块中的已知项,这使得重新组织模块树变得更容易 —— 当模块与父模块关联的很紧密,但某天父模块可能要移动到模块树的其它位置。 我们可以通过在路径的开头使用 `super` ,从父模块开始构建相对路径,而不是从当前模块或者 crate 根开始。这类似以 `..` 语法开始一个文件系统路径。使用 `super` 允许我们引用父模块中的已知项,这使得重新组织模块树变得更容易 —— 当模块与父模块关联的很紧密,但某天父模块可能要移动到模块树的其它位置。
考虑一下示例 7-8 中的代码,它模拟了厨师更正了一个错误订单,并亲自将其提供给客户的情况。`back_of_house` 模块中的定义的 `fix_incorrect_order` 函数通过指定的 `super` 起始的 `serve_order` 路径,来调用父模块中的 `deliver_order` 函数: 考虑一下示例 7-8 中的代码,它模拟了厨师更正了一个错误订单,并亲自将其提供给客户的情况。`back_of_house` 模块中的定义的 `fix_incorrect_order` 函数通过指定的 `super` 起始的 `deliver_order` 路径,来调用父模块中的 `deliver_order` 函数:
<span class="filename">文件名src/lib.rs</span> <span class="filename">文件名src/lib.rs</span>