Rust学习记录--C7 Package, Crate, Module

C7 Package, Crate, Module

  • [Package, Crate, Module](#Package, Crate, Module)
    • ChatGPT总结版
    • [Package(包)------Cargo 管理的项目单位](#Package(包)——Cargo 管理的项目单位)
  • 路径Path
  • [super, pub struct/enum](#super, pub struct/enum)
  • [use 关键字](#use 关键字)
  • 将模块内容放到其他文件

TODO 感觉这节讲的不是很清楚,可能需要实际创建一些文件并且使用一些

Package, Crate, Module

ChatGPT总结版

  • 使用chatGPT总结了一版
    • Package > Crate > Module
      • Package:一个项目(由 Cargo 管理)
      • Crate:一个可编译单元(库或可执行程序)
      • Module:代码的命名空间与组织方式

Package(包)------Cargo 管理的项目单位

  • 定义
    • Package 是 Cargo 的概念,本质上是一个目录,包含:

      • Cargo.toml
      • 一个或多个 crate
    • 一个 Package 里可以有什么?

      • 最多 1 个 library crate TODO 没看懂这里为什么只有一个lib.rs
      • 任意多个 binary crate
    • 典型结构:

      text 复制代码
      my_project/
      ├── Cargo.toml
      └── src/
          ├── lib.rs        // library crate(可选)
          ├── main.rs       // 默认 binary crate
          └── bin/
              ├── tool1.rs  // 额外的 binary crate
              └── tool2.rs

路径Path

super, pub struct/enum

use 关键字

将模块内容放到其他文件

2026/1/7

相关推荐
布莱克6051 小时前
C/C++ 中变量的声明与定义:区别、联系与常见误区
c语言·开发语言·c++·声明·定义
LabVIEW开发2 小时前
LabVIEW 局部变量为何引发竞争条件?四种同步机制
开发语言·labview
benchmark_cc2 小时前
A 股、港股、美股如何建立统一的标的主数据格式?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
前进的李工3 小时前
Agent 学习笔记 05:系统提示词应该怎么写
笔记·学习·prompt·agent·个人开发·few-shot·ai应用开发
Zenova EdgeOS3 小时前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang
取名真是4 小时前
Python 算法知识点从基础到进阶
开发语言·python·算法
FRing034 小时前
vue2干货总结3(computed计算属性、watch监听器)
开发语言·前端·vue.js·vue2
正在走向自律5 小时前
【3/5】人工智能训练师 三级/高级工 考证学习方向:从“独立执行”到“设计、归因与全链条负责”
人工智能·学习·人工智能训练师·注方案设计·数据质控负责人·模型评测与调优辅助·ai训练项目交付
Fatbobman(东坡肘子)5 小时前
快速消失的硬盘容量 -- 肘子的 Swift 周报 #160
开发语言·人工智能·redis·ios·swiftui·iphone·swift
揽星河..5 小时前
【C语言】底层程序设计
c语言·开发语言