rust把mod简单的事没说清,一片混乱,似懂非懂. mod语句查找只有一条规则:先找mod名1.rs,没有就我同名文件夹下的mod名1.rs,如果没有,就同名文件夹下的mod名1/mod.rs,再没有就error. 在mod.rs中,pub mod 文件名1或文件夹名1/2,可以无限递归,当然没必要。 直到找到 模块.rs. 如果模块.rs中仅声明,没定义,又要无限递归,当然也没必要。 假设不玩递归了,直到模块z.rs中有定义了,得是pub mod …{…}.

而调用的.rs中得:mod mod名1;use mod名1::文件夹2…n::文件名z::mod名; 如果同名 ,即:模块名文件夹::(模块名.rs文件本身的)模块名::(文件模块名.rs中的pub mod )模块名::(函数)模块名,一共连续4个路径。 使用时:mod名::函数名或直接函数名(不建议,尤其大程序,容易混淆)。

这种文件夹必须用mod.rs联结文件夹与文件名.rs,并且必经我的同名文件夹下查找要调用的mod的方式,是一种文件路径与mod混用方式,画蛇添足。为了装逼的递归?还是适应不同的文件系统?

相关链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。