4 个版本
新版本 0.2.0 | 2024 年 8 月 5 日 |
---|---|
0.1.2 | 2024 年 8 月 5 日 |
0.1.1 | 2024 年 7 月 5 日 |
0.1.0 | 2024 年 7 月 5 日 |
27 在 #complex 中排名
每月下载 187 次
5KB
一种 更短 的写 default 的方法。提供
___()
作为Default::default()
的缩写i32::___()
代替i32::default()
基于 Rust 内部讨论
还可以查看使用 default()
而不是 Default::default()
的 Defaults crate
示例
let b : i32 = Default::default(); // Default Rust
let a : i32 = ___(); // Now
assert_eq!(a, b);
也可以与函数一起使用
let a = f(Default::default()); // Default Rust
let b = f(___()); // Now
assert_eq!(a, b);
也可以在实现 Default
特性时初始化复杂的 Rust 结构体
impl Default for ComplexeStruct {
fn default() -> Self {
Self { a : ___(), b : ___(), c : ___(), vec : vec![0] }
// instead of
// Self { a : Default::default(), b : Default::default(), c : Default::default(), vec : vec![0] }
}
}
统一语法:MyStruct::___()
代替 MyStruct::default()
type T = i32; // any type with default
assert_eq!(T::default(), T::___());