编程语言通常会提供一种将大型代码块拆分为多个文件以管理复杂性的方法。Java遵循每个.java文件就是公共类的约定,而C++为我们提供了头文件和 include 语句。Rust 也不例外,它为我们提供了模块机制。模块事Rust程序中命名和组织代码的一种方式。为了灵活地组织代码。Rust 提供了多种创建模块的方法。

    模块是一个复杂的主题,本章只对它进行简要介绍,我们将重点介绍它的应用。

    • 每个 Rust 程序都需要一个 root 模块。对于可执行文件,它通常是 main.rs 文件,对于程序库,它通常是 lib.rs 文件。
    • 模块可以在其他模块内部声明,也可以组织为文件和目录。
    • 为了让编译器能够识别我们的模块,我们需要使用关键字 mod 声明,例如 mod my_module。在我们的 root 模块中,要在模块名称前使用关键字use,这表示将元素引入作用域。
    • 模块中定义的元素默认是私有的,你需要使用关键字 pub 将它暴露给调用方。