模块

我们已看了“impl”块如何让我们将函数的命名空间建为一种类型。

同样,“mod”让我们可为类型和函数建立命名空间:

1. mod foo {
2. pub fn do_something() {
3. println!("In the foo module");
4. }
5. }

7. mod bar {
8. pub fn do_something() {
9. println!("In the bar module");
10. }
11. }

13. fn main() {
14. foo::do_something();
15. bar::do_something();
16. }

This slide should take about 3 minutes.

  • 包提供功能,并包含一个描述如何构建包含 1 个以上 crate 的捆绑包的“Cargo.toml”文件。
  • crate 是一种模块树,其中的二进制 crate 会创建一个可执行文件,而库 crate 会编译为库。
  • 模块定义了组织和范围,并且是本部分的重点。