Rust函数如何设置为公有()

声明的开始使用” pub” 关键字, 以便外部函数可以访问该函数。
以下是隐私规则:

  • 如果任何函数或模块是公共的, 那么任何父模块都可以访问它。
  • 如果任何函数或模块是私有的, 则可以通过其直接父模块或父模块的子模块对其进行访问。
让我们通过一个简单的例子来理解这一点:
mod outer { pub fn a() { println!("function a"); } fn b() { println!("function b"); } mod inner { pub fn c() { println!("function c"); } fn d() { println!("function d"); } } } fn main() { outer::a(); outer::b(); outer::inner::c(); outer::inner::d(); }

输出
Rust函数如何设置为公有()

文章图片
在上面的示例中, main()函数是根模块, 而外部模块是项目的当前根模块。因此, main()函数可以访问外部模块。
由于函数a()是公共的, 因此对external :: a()的调用不会导致任何错误, 但是当main()函数尝试访问external :: b()函数时, 由于它会导致编译错误是私有函数。
【Rust函数如何设置为公有()】main()函数无法访问内部模块, 因为它是私有的。内部模块没有子模块, 因此只能由其父模块(即外部模块)访问。

    推荐阅读