1.在windows上安装Rust
Windows 上安装 Rust 需要有 C++
环境,以下为安装的两种方式:
1. x86_64-pc-windows-msvc
(官方推荐)
先安装 Microsoft C++ Build Tools,勾选安装 C++ 环境即可。安装时可自行修改缓存路径与安装路径,避免占用过多 C 盘空间。
准备好 C++ 环境后开始安装 Rust:
在 RUSTUP-INIT 下载系统相对应的 Rust 安装程序,一路默认即可。
bash
PS C:\Users\48370> rustup-init.exe
......
Current installation options:
default host triple: x86_64-pc-windows-msvc
default toolchain: stable (default)
profile: default
modify PATH variable: yes
1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
2.更新
要更新 Rust,在终端执行以下命令即可更新:
bash
$ rustup update
3.卸载
要卸载 Rust 和 rustup
,在终端执行以下命令即可卸载:
bash
$ rustup self uninstall
4.检查是否安装成功
检查是否正确安装了 Rust,可打开终端并输入下面这行,此时能看到最新发布的稳定版本的版本号、提交哈希值和提交日期:
bash
$ rustc -V
rustc 1.56.1 (59eed8a2a 2021-11-01)
$ cargo -V
cargo 1.57.0 (b2e52d7ca 2021-10-21)
注:若发现版本号不同,以您的版本号为准
恭喜,你已成功安装 Rust!
5.开发工具
这里我选择的是Jetbrains的RustRover,因为已经习惯使用Jetbrains全家桶的工具了,也可以使用VSCode【需要下载对应的rust-analyzer插件】。
2.认识Cargo
Cargo 是 Rust 语言的官方包管理器和构建工具,集成了代码编译、依赖管理、测试运行、文档生成、包发布等功能。它是 Rust 生态系统的核心工具,几乎每个 Rust 项目都会使用 Cargo 来管理。
核心功能
1. 项目管理
-
项目初始化 通过
cargo new
或cargo init
创建项目,自动生成标准目录结构和配置文件:bashcargo new my_project # 创建二进制可执行项目 cargo new --lib my_lib # 创建库项目
生成的文件结构:
bashmy_project/ ├── Cargo.toml # 项目元数据和依赖配置 ├── Cargo.lock # 新增的锁定文件 ├── .gitignore # 默认忽略 target/ 目录 └── src/ └── main.rs # 主入口文件(或 lib.rs 用于库)
-
Cargo.toml 项目的核心配置文件,包含:
-
元数据:项目名称、版本、作者、许可证等。
-
依赖声明:直接依赖、开发依赖、构建依赖。
-
构建配置:优化选项、特性开关(features)、目标平台等。
示例:
html[package] name = "my_project" version = "0.1.0" authors = ["Your Name <your@email.com>"] edition = "2021" # Rust 版本 [dependencies] serde = "1.0" # 直接依赖 tokio = { version = "1.0", features = ["full"] } [dev-dependencies] rand = "0.8" # 仅测试和示例使用的依赖
-
- Cargo.lock
当首次运行 cargo build
或添加依赖后,Cargo 会自动生成 Cargo.lock
文件。它记录了项目依赖的精确版本信息,确保每次构建时依赖版本的一致性。
-
位置:项目根目录下的
Cargo.lock
。 -
作用:
-
锁定所有依赖的具体版本(包括间接依赖)。
-
确保团队成员或部署环境使用完全相同的依赖版本。
-
防止因依赖版本意外升级导致构建失败或行为不一致。
-
与 Cargo.toml 的区别
Cargo.toml | Cargo.lock | |
---|---|---|
编辑方式 | 手动编辑(声明依赖的版本范围) | 自动生成(记录依赖的精确版本) |
版本控制 | 必须提交到版本库 | 应用项目建议提交,库项目通常不提交 |
示例内容 | serde = "1.0" (允许语义化版本更新) |
serde = { version = "1.0.189" } |
2. 依赖管理
-
依赖来源
-
crates.io:默认的公共包仓库(类似 npm 的 registry)。
-
Git 仓库:直接从 Git 仓库拉取代码。
-
本地路径:引用本地其他项目作为依赖。
示例:
XML[dependencies] # 从 crates.io 获取 regex = "1.5" # 从 GitHub 分支获取 my_lib = { git = "https://github.com/user/my_lib", branch = "dev" } # 本地路径依赖 local_lib = { path = "../local_lib" }
-
-
版本解析 Cargo 使用语义化版本(SemVer)管理依赖,并自动解析依赖冲突,生成精确版本的依赖关系(记录在
Cargo.lock
文件中)。
3. 构建与编译
-
基本命令
-
cargo build
:编译项目,生成调试版二进制文件(位于target/debug/
)。 -
cargo build --release
:编译优化后的生产版本(位于target/release/
)。 -
cargo run
:编译并直接运行主程序。 -
cargo check
:快速检查代码语法和类型,不生成二进制文件。
-
-
增量编译 Cargo 默认启用增量编译,仅重新编译修改过的部分,大幅提升开发效率。
4. 测试与文档
-
单元测试与集成测试
-
在代码中使用
#[test]
标记测试函数。 -
通过
cargo test
运行所有测试。 -
支持测试过滤(如
cargo test test_add
运行特定测试)。
-
-
文档生成
-
使用
///
或//!
编写文档注释。 -
通过
cargo doc
生成 HTML 文档,自动托管依赖的文档链接。 -
cargo doc --open
直接在浏览器中打开文档。
示例:
rust/// 计算两个数的和 /// # 示例 /// ``` /// assert_eq!(add(2, 3), 5); /// ``` pub fn add(a: i32, b: i32) -> i32 { a + b }
-
3.Hello World!
在学习一门新的语言最开始的时候,都是要从输出**hello world!**开始的。下面演示一下创建rust项目以及编写、运行hello world程序。
-
首先打开RustRover,点击"文件"->"新建"->"项目"
然后点击"创建",这样就新建了一个rust项目。
-
这是创建好的项目结构
-
接下来在main.rs中写对应的程序,如下:
rustfn main() { println!("Hello, world!"); }
点击图中的箭头就可以运行程序了,控制台输出结果如下:

-
接下来是对代码的解释:
1.
fn main() { ... }
-
作用:定义程序的入口函数
-
细节:
-
每个可执行 Rust 程序必须有一个
main
函数 -
fn
是函数定义的关键字(function 的缩写) -
函数体必须用花括号
{}
包裹 -
Rust 使用 4 空格缩进(非强制但社区约定)
-
2.
println!("Hello, World!");
-
作用:向标准输出打印文本
-
分解:
-
println!
是一个 宏 (macro),不是普通函数,注意结尾的!
符号 -
"Hello, World!"
是一个字符串字面量 -
行尾必须有分号
;
(Rust 中大多数语句以分号结尾)
-
-