Rust编程:泛型、错误处理与Tock中的应用
1. 打印复杂类型
在Rust中,我们可以定义复杂类型并对其进行不同方式的打印。以下代码展示了如何定义一个复数类型并进行打印:
fn main() {
let number = Complex { re: 1.0, im: 2.0 };
// manually print them
println!("re: {}, im: {}", number.re, number.im);
// print display
println!("number: {}", number); // number: 1+2i
// print debug
println!("number: {:?}", number);
// number: Complex { re: 1.0, im: 2.0 }
}
需要注意的是,基本数据类型默认实现了 Debug 和 Display 特性。
2. 泛型结构
和函数一样,类型定义(结构体和枚举)可以包含泛型类型。下面是MicroBit结构体使用泛型的示例:
trait Mcu {
// ...
}
struct MicroBit<M:Mcu> {
mcu: M
// ...
}
impl<M:Mcu> MicroBit<M> {
// ...
}
超级会员免费看
订阅专栏 解锁全文
180

被折叠的 条评论
为什么被折叠?



