定义lib接口
新建一个lib工程,目录结构如下:

在lib.rs中定义如下函数:
pub fn foo(){ println!("lib pub foo get called") } pub fn foo_indirect(){ foo_private() } fn foo_private(){ println!("lib private foo get called indirect") }
foo和foo_indirect通过pub修饰,是对外可见的接口。foo_private没有pub修饰,是私有内部函数
在其他项目中使用该lib
定义依赖项,这里要指定正确的文件路径名:
[dependencies] mylib = {path = "../../mylib"}
通过use关键字引入库:
use mylib; fn main() { mylib::foo(); //mylib::foo_private(); //执行错误 mylib::foo_indirect(); }
发表回复