【笔记】Rust的特质

前言

Rust的特质学习笔记

定义特质

  • 特质中可以定义抽象的方法,也可以定义实现了的方法
1
2
3
trait 特质名 {
fn 方法名(&self);
}

为指定结构体实现特质

1
2
3
4
5
impl 特质名 for 结构体名 {
fn 方法名(&self) {
...
}
}

调用被实现的方法

1
2
let 变量名 = 结构体名{};
变量名.方法名();

泛型函数

  • 要求函数的参数中至少有一个参数的类型符合泛型类型

定义泛型函数

  • T类型的参数必须实现指定特质
1
2
3
fn 函数名<T:特质名称>(参数名:T) {
...
}

实现Display特质

1
2
3
4
5
6
impl Display for 结构体名 {
fn fmt(&self, f: &mut Formatte<'_>) -> std::fmt::Result {
println!("");
return Result::Ok(());
}
}

完成

参考文献

哔哩哔哩——面向加薪学习