2024-11-01 start:
RustRover:JetBrains 出品的 Rust IDE
rustup update 版本更新
rustc --version 查看版本
cargo --version
end
相关文档:
https://www.rustwiki.org.cn/zh-CN/book/ch00-00-introduction.html
https://course.rs/about-book.html
在vscode中安装rust插件:
rust-analyzer
它会实时编译和分析你的 Rust 代码,提示代码中的错误,并对类型进行标注。你也可以使用官方的 rust 插件取代
rust syntax
为代码提供语法高亮
crates
crates 帮助你分析当前项目的依赖是否是最新的版本。
Even Better TOML
Rust 使用 toml 做项目的配置管理
rust test lens
可以帮你快速运行某个 Rust 测试。
安装完后创建一个hello.rs:
fn main() {
println!("Hello, world!");
}
执行rustc hello.rs,然后发现报错了(rust果然不简单)
解决方法:
rustup toolchain install stable-x86_64-pc-windows-gnu
rustup default stable-x86_64-pc-windows-gnu
然后执行:rustc hello.rs
.\hello.exe
使用cargo创建一个项目:
cargo new helloCargo
编译rust源代码:
cargo build
运行:
cargo run
检查rust是否有误
cargo check
// Rust 程序入口函数,跟其它语言一样,都是 main,该函数目前无返回值
fn main() {
// 使用let来声明变量,进行绑定,a是不可变的
// 此处没有指定a的类型,编译器会默认根据a的值为a推断类型:i32,有符号32位整数
// 语句的末尾必须以分号结尾
let a = 10;
// 主动指定b的类型为i32
let b: i32 = 20;
// 这里有两点值得注意:
// 1. 可以在数值中带上类型:30i32表示数值是30,类型是i32
// 2. c是可变的,mut是mutable的缩写
let mut c = 30i32;
// 还能在数值和类型中间添加一个下划线,让可读性更好
let d = 30_i32;
// 跟其它语言一样,可以使用一个函数的返回值来作为另一个函数的参数
let e = add(add(a, b), add(c, d));
// println!是宏调用,看起来像是函数但是它返回的是宏定义的代码块
// 该函数将指定的格式化字符串输出到标准输出中(控制台)
// {}是占位符,在具体执行过程中,会把e的值代入进来
println!("( a + b ) + ( c + d ) = {}", e);
}
// 定义一个函数,输入两个i32类型的32位有符号整数,返回它们的和
fn add(i: i32, j: i32) -> i32 {
// 返回相加值,这里可以省略return
i + j
}
2023-09-03 start:
rust b站视频(软件工艺师):https://www.bilibili.com/video/BV1hp4y1k7SV/?spm_id_from=333.999.0.0&vd_source=712dadad0f9207ceca385f08db01302d
end