4.1.4 默认实现
04-默认实现 — Comprehensive Rust
1分钟内可阅读完
译文 · 基于 Comprehensive Rust
原文链接: https://google.github.io/comprehensive-rust/idiomatic/polymorphism/refresher/default-impls.html
4.1.4 默认实现
| |
Trait 常有一些方法:只要你实现了必需方法,其余就会替你实现好。
若方法体已写好,该 trait 方法就有默认实现。实现可以借助其它可用方法,例如同一 trait 的其它方法,或父 trait(supertrait)的方法。
常见模式是:提供必须实现的核心功能(如
Ord的compare),再为可据此实现的函数给出默认实现(如Ord的max/min/clamp)。默认方法可被 derive 宏覆盖,因为 derive 宏会在实现中生成任意 AST。
参考: