1.2 安装Rust
参考官网安装教程:https://www.rust-lang.org/
1.3 Hello, World
Rust源文件的后缀为 main.rs
Hello-World 程序
1 | fn main() { |
fn
意为function- 与C++中的
int main() {}
不同,Rust中的main()
函数没有返回值,它也是每个Rust程序最先执行的代码
- 与C++中的
println!
是一个宏而非函数,用于输出字符串,其中ln
意为line- 它是一个Rust macro(宏)
- 上述程序中,该函数前的缩进是4个空格而不是tab
- 与C++一样,每一行代码以
;
结尾
编译方式
1 | rustc main.rs |
rustc
中的c
意为compilerrustc
只适合编译简单的Rust程序,对于复杂的程序,需要使用cargo
编译成功后会生成二进制文件main
,与源文件main.rs
同名
运行二进制文件
1 | ./main |
1.4 Hello, Cargo
Cargo是Rust的构建系统和包管理工具(谁懂CMake的痛……)
- 构建代码、下载依赖库、构建库
在终端可以通过命令cargo --version
查看Cargo版本
使用Cargo创建项目
1 | cargo new project_name |
随后Cargo将生成名为project_name
的文件夹,并包含
- 文件
Cargo.toml
- 文件夹
src
- 包含源文件
main.rs
- 所有的源文件都应当放在
src
下
- 包含源文件
Cargo.toml
后缀toml
是“Tom’s Obvious, Minimal Language”的简称,是Cargo的配置格式
1 | [package] |
- 区域标题
[package]
表示下方内容是用来配置package的 [dependencies]
列出项目的依赖项
在Rust中,调的库或者包被称作“crate”,中文意为“板条箱”
Cargo构建项目
在项目目录下,使用命令
1 | cargo build |
来构建项目。
- 如果是第一次构建,将会生成
cargo.lock
文件,该文件负责追踪项目版本,不需要手动修改
此外,上述命令还会生成二进制文件target/debug/project_name
,与rustc
命令一致
Cargo构建和运行项目
使用命令
1 | cargo run |
可以构建并立即运行二进制文件
- 如果之前编译成功过且源代码没有改变,将直接运行二进制文件
Cargo检查代码
使用命令
1 | cargo check |
可以检查代码来确保编译,但不会生成可执行文件
- 相比
cargo build
,cargo check
的执行速度更快,用于开发过程中来检查代码问题 - 只有在需要时或项目开发结束时,才调用
cargo build
来执行程序
Cargo构建和发布项目
注意cargo build
命令主要用于个人调试使用,如果是为发布而构建,那么一般执行
1 | cargo build --release |
- 该命令的编译时间更长,同时将优化代码
- 可执行文件将生成在
target/release
而不是target/debug