番外- rust 的符号说明大全
Rust 全符号使用指南
常见
一、基础符号
1. 算术运算符
+:加法-:减法*:乘法/:除法%:取余
2. 赋值运算符
=:赋值+=:加后赋值-=:减后赋值*=:乘后赋值/=:除后赋值%=:取余后赋值
3. 比较运算符
==:等于!=:不等于>:大于<:小于>=:大于等于<=:小于等于
4. 逻辑运算符
&&:逻辑与||:逻辑或!:逻辑非
二、引用与解引用
1. 引用与借用
&:创建引用*:解引用指针
2. 可变引用
&mut:可变引用
三、范围与迭代
..:半开区间,包含起始但不包含结束start..end..=:闭区间,包含起始和结束start..=end..(简写):从起始到无限start....=(简写):从零到结束..=end
四、集合类型特有符号
[]:数组与切片声明let arr = [1, 2, 3];{}:代码块或结构体声明let x = { 5 + 3 };():函数调用或元组let t = (1, 'a');
五、模式匹配相关
|:模式匹配中的“或”操作match x { 1 | 2 => println!("Matched!") }_:通配符,忽略未使用的值match x { _ => println!("Any value") }
六、泛型与类型相关
::<T>:明确指定类型参数let v = Vec::<i32>::new();::指定类型或特征约束fn foo<T: Display>(x: T)->:函数返回类型fn add(a: i32, b: i32) -> i32 {}impl:实现特征impl Display for MyStructdyn:动态分发的特征对象Box<dyn Trait>
七、宏与编译相关
!:宏调用println!("Hello");?:错误传播运算符,用于Result或Option类型let val = some_func()?;#:属性标记,如#[derive(Debug)]
八、生命周期相关
'a:生命周期标注fn foo<'a>(x: &'a i32)'_:匿名生命周期&'_ i32
九、其他符号
@:绑定模式,用于模式匹配Some(x @ 1..=5)...:已弃用,过去用于范围,现在用..和..=;:语句结束符,:用于分隔数组元素、元组成员等:::路径分隔符std::collections::HashMap=>:模式匹配的分支match x { 1 => "one" }|:闭包参数分隔|x| x + 1
十、运算符重载相关
+:重载加法运算Add特征-:重载减法运算Sub特征*:重载乘法运算Mul特征/:重载除法运算Div特征%:重载取余运算Rem特征

浙公网安备 33010602011771号