乱读天书, 不求甚解
周祎骏的个人云笔记
Toggle navigation
乱读天书, 不求甚解
主页
Linux:系统配置
Linux:用户管理
Linux:优化排错
Linux:进程调度
Linux:文件系统
Linux:网络
Linux:系统服务
Linux:安全
Linux:内核
容器:Docker
容器:containerd
容器编排:Kubernetes
IAC:Terraform
大数据:Hadoop
大数据:Zookeeper
大数据:Hbase
消息队列:rsyslog
消息队列:kafka
数据库:MySQL
数据库:MongoDB
搜索引擎:Elasticsearch
时序数据库:OpenTSDB
网站服务:Nginx
编程:Bash
编程:Perl
编程:Python
编程:C
编程:JAVA
编程:Rust
版本控制:gitlab
知识管理:docusaurus
常用小工具
关于我
标签
Rust 04.01 使用模块
2023-02-05 10:10:59
38
0
0
admin
> 使用模块 # 简单使用模块 ``` mod school { pub mod teacher { //默认都是私有的,必须申明pub 才可以从外部调用 pub fn t(x: i32) { println!("{}",x)} } pub mod student { pub fn t2(){ super::teacher::t(3); //super 相当于../ } } } fn main() { crate::school::teacher::t(1); //通过绝对路径调用模块 school::teacher::t(2); //通过相对路径调用模块 school::student::t2(); } ``` **在模块中,结构体可以逐一声明是否位公开** ``` mod abc { pub struct def { pub a: i32, //公开 b: i32, //不公开 } } ``` **如果是枚举的话,声明枚举是公开的话,里面的元素就全部是公开的了** *** # 用USE关键字将路径导入作用域 ``` use crate::school::teacher; fn main() { teacher::t(1); } ``` * use 也可以使用相对路径,不过路径开始处要写self (这个将来可能会改) ``` use self::school::teacher; ``` * 使用as 关键字来提供新的名称 ``` use self::school::teacher as aaa; fn main() { aaa::t(1); } ``` # 使用外部包 修改Cargo.toml ``` [dependencies] rand = "0.5.5" ```
上一篇:
Rust 04.00 基本介绍包模块等
下一篇:
Rust 04.02 将模块拆分为不同的文件
文档导航