从其他子模块的子模块访问功能

Access functions from sub-module from other sub-module

我正在尝试将我的程序拆分为一个库,该库包含多个具有结构和函数的子模块,以及一个使用所有这些子模块的主文件。我想要一个子模块,其中包含除其他子模块外其他任何地方都不需要的有用功能。但是,我在将这个子模块导入另一个模块时遇到困难。货物项目称为 eant_rust。我的 lib.rs 和 main.rs 文件在 src 目录中。我有一个名为 modules 的文件夹,lib.rs 文件从中导入。模块文件夹内有一个 mod.rs 文件,其中包含我遇到问题的两个子模块。

lib.rs:

pub mod modules;

main.rs:

extern crate eant_rust;

fn main() {}

mod.rs(包含两个子模块的模块文件夹内):

pub mod network;

functions.rs(一个子模块):

pub fn reverse() {}
pub fn sum_vec() {}

network.rs(另一个):

use modules::functions;
functions::reverse();
functions::sum_vec();

当我尝试编译时出现以下错误: 错误:未解析的导入 modules::functionsmodules.

中没有functions

如果我理解正确的话,你的文件是这样的:

lib -
    |- lib.rs
    |- main.rs
    |- modules -
               |- mod.rs
               |- functions.rs
               |- network.rs

根据你在 network.rs 中写的内容,你应该可以使用 modules::functions 但是你似乎没有将它包含在 modules/mod.rs

所以在 modules/mod.rs.

中添加一行 mod functions;