当前位置: 首页 > wzjs >正文

大石桥网站网址域名

大石桥网站,网址域名,做网站用php哪些知识点,网站客户端怎么做的文章目录Rust 模块系统:控制作用域与私有性一、模块声明规则二、路径(Paths)访问规则三、私有性控制(pub 关键字)四、use 关键字:简化路径五、模块树结构示例关键总结Rust 模块系统:控制作用域与…

文章目录

      • Rust 模块系统:控制作用域与私有性
        • 一、模块声明规则
        • 二、路径(Paths)访问规则
        • 三、私有性控制(`pub` 关键字)
        • 四、`use` 关键字:简化路径
        • 五、模块树结构示例
        • 关键总结

Rust 模块系统:控制作用域与私有性

模块(mod)是 Rust 组织代码的核心机制,用于封装代码、管理作用域和实现私有性控制。核心概念包括:模块声明路径(paths)pub 公开性use 快捷引用

demo


一、模块声明规则
  1. 起点:Crate 根文件

    • 编译器从 crate 根文件开始编译:
      • 库 crate:src/lib.rs
      • 二进制 crate:src/main.rs
  2. 声明模块的三种方式
    在 crate 根文件声明 mod garden; 时,编译器按顺序查找:

    • 内联代码:mod garden { /* 代码 */ }
    • 文件 src/garden.rs
    • 文件 src/garden/mod.rs
  3. 子模块声明
    在非根文件(如 src/garden.rs)中声明子模块 mod vegetables; 时,查找位置:

    • 内联代码:mod vegetables { /* 代码 */ }
    • 文件 src/garden/vegetables.rs
    • 文件 src/garden/vegetables/mod.rs

文件结构示例

backyard
├── Cargo.toml
└── src├── garden│   └── vegetables.rs  // 子模块代码├── garden.rs         // 模块声明└── main.rs           // crate 根

二、路径(Paths)访问规则
  • 通过路径访问模块内项(如结构体、函数):
    crate::garden::vegetables::Asparagus // 绝对路径
    
  • 路径类型:
    • 绝对路径:从 crate 根开始
    • 相对路径:从 self(当前模块)或 super(父模块)开始

三、私有性控制(pub 关键字)
  1. 默认私有

    • 模块内项(函数/结构体等)默认 对父模块私有
    • 子模块可访问父模块,但父模块不能访问子模块私有项。
  2. 公开作用域

    pub mod garden {          // 公开模块pub mod vegetables {   // 公开子模块pub struct Asparagus; // 公开项}
    }
    
    • pub mod:使模块可从外部访问
    • pub 修饰项:使模块内的特定项公开

四、use 关键字:简化路径
  • 创建快捷方式避免重复长路径:
    use crate::garden::vegetables::Asparagus;
    fn main() {let plant = Asparagus; // 直接使用短名
    }
    
  • 常用组合:
    use crate::garden::vegetables; // 引入模块,通过 vegetables::Asparagus 访问
    use crate::garden::vegetables::Asparagus as Veg; // 重命名
    

五、模块树结构示例

代码示例(餐厅管理系统):

// src/lib.rs
mod front_of_house {     // 模块pub mod hosting {     // 子模块(公开)pub fn add_to_waitlist() {} // 公开函数}
}

模块树结构

crate
└── front_of_house└── hosting└── add_to_waitlist

关键总结
机制作用示例
mod声明模块mod garden;
pub公开模块或项pub fn seat_at_table()
crate::绝对路径起点crate::garden::Asparagus
use创建路径别名use crate::garden;
文件系统映射模块与文件自动关联garden.rsmod garden

模块系统通过文件路径映射和层级访问控制,实现了代码的高效组织与封装,是 Rust 安全性的重要基石。

http://www.dtcms.com/wzjs/455845.html

相关文章:

  • 网站怎样设计网页百度的网址是什么
  • wordpress 漏洞seo排名优化关键词
  • 网站建设试用北京seo专业团队
  • 做网站需要会编程语言吗建站模板
  • 常熟市住房建设局网站广东深圳疫情最新
  • 商洛做网站多少钱培训网站有哪些
  • 计算机专业的会学怎么做网站吗网站平台搭建
  • 成都网站建设公司服务商关键词seo优化软件
  • 买服务器做网站 镜像选什么北京seo多少钱
  • 专业购物网站建设报价镇江百度seo
  • 网站建设 睿达科在线发外链工具
  • 自己做的网站怎么收藏本站如何添加百度指数
  • 英文书 影印版 网站开发友情链接也称为
  • html5网站源代码百度指数代表什么意思
  • 做网站分析网站建设与管理是干什么的
  • 网站优化宝广东网站关键词排名
  • 老年夫妻做爰视频网站建网站找谁
  • 餐饮加盟网站模板关键词seo教程
  • 有建设网站的软件吗揭阳seo快速排名
  • 内蒙古做网站的公司b2b电子商务网站都有哪些
  • 国信网络模版网站建设方案相关网站优化方案范文
  • 宁波网站运营优化系统网站建设报价单模板
  • 网站怎么做qq客服搜索引擎营销成功案例
  • 网站导航优化seo关键词排名优化专业公司
  • 网站在什么地方设关键词站长网站大全
  • 域名申请网页制作网站建设软文代发布
  • 做一个网站APP价格google推广工具
  • 河北智能网站建设互联网销售模式
  • ps做网站像素大小西安 做网站
  • 动漫设计本科宁波如何做seo排名优化