内置 trait
Rust 标准库内置了很多 trait,在使用这些 trait 的时候也需要注意。
列表
- P.TRA.BLN.01 在实现
Borrow
特质时,需要注意一致性 - G.TRA.BLN.01 应该具体类型的
default()
方法代替Default::default()
调用 - G.TRA.BLN.02 不要为迭代器实现Copy特质
- G.TRA.BLN.03 能使用派生宏(Derive)自动实现Default特质就不要用手工实现
- G.TRA.BLN.04 在使用
#[derive(Hash)]
的时候,避免再手工实现PartialEq
- G.TRA.BLN.05 在使用
#[derive(Ord)]
的时候,避免再手工实现PartialOrd
- G.TRA.BLN.06 不要对实现
Copy
或引用类型调用std::mem::drop
和std::mem::forgot
- G.TRA.BLN.07 对实现
Copy
的可迭代类型来说,要通过迭代器拷贝其所有元素时,应该使用copied
方法,而非cloned
- G.TRA.BLN.08 实现
From
而不是Into
- G.TRA.BLN.09 一般情况下不要给
Copy
类型手工实现Clone
- G.TRA.BLN.10 不要随便使用Deref特质来模拟继承