我想写一个mod.rs
像这样的文件:
pub use foo::*;
mod foo;
pub mod bar;
但是我得到了错误。正确的方法是什么?unresolved import
foo
这是您的问题的MCVE:
pub mod sub {
use foo::function;
pub mod foo {
pub fn function() {}
}
}
fn main() {}
正如Adrian提到的,解决方案是self
在use
语句中使用关键字:
pub mod sub {
use self::foo::function;
pub mod foo {
pub fn function() {}
}
}
fn main() {}
发生什么了?Rust编程语言描述了该问题:
那
self
呢?好吧,默认情况下,使用声明是绝对路径,从板条箱根开始。self
使该路径相对于您当前在层次结构中的位置。
也就是说,use foo
意味着foo
从箱子的根部使用。use self::foo
装置使用foo
相对于当前模块。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句