# 模块

前言

在 Rust 中可以通过模块的机制来实现最外层的封装,并且每一个 Rust 文件都可以看作一个模块,模块内的元素可以通过 pub 关键字对外明示

# 1.定义模块

pub struct ClassName {
    pub field: Type
}
1
2
3
pub enum EnumName {
    A,
    B
}
1
2
3
4

# 2.使用模块

// second.rs
pub struct ClassName {
    pub field: Type
}
impl ClassName {
    pub fn new(value:i32)->ClassName{
        ClassName {
            field:value
        }
    }
    pub fn public_method(&self){
        println!("from public method")
        self.private_methods()
    }
    fn private_methods(&self){
        println!("from private methods")
    }
} 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
mod second
use second::ClassName

fn main(){
    let obj = ClassName::new(1024)
    obj.publish_method()
}
1
2
3
4
5
6
7