- 实现思路:
- 在Rust中,通过
pub use
语句可以实现将内部模块的函数导出到外层模块,同时保持模块的封装性。
- 首先,需要确保
inner
模块的original_function
是pub
(公开的),这样才能被外层模块访问。
- 然后在
outer
模块中使用pub use
语句为inner::original_function
创建别名,以便从outer
模块外部可以直接访问该函数。
- 关键代码片段:
// inner模块定义original_function函数并使其公开
pub fn original_function() {
println!("This is the original function in inner module.");
}
// 这里假设middle模块不做任何额外处理,仅包含对inner模块的引用
mod inner;
mod middle;
// 为inner::original_function创建别名并导出
pub use self::middle::inner::original_function as exported_function;
mod outer;
fn main() {
outer::exported_function();
}