- Implémenter des traits pour des types (c'est simple!)
- Comprendre impl Trait for Type
- Utiliser les méthodes de trait
Imaginez que vous donnez 🎁 des capacités à un type:
- impl Trait for Type = Donner des capacités (méthodes) à un type
- Le type peut maintenant faire ce que le trait définit
- C'est super simple et super puissant!
C'est exactement comme implémenter des traits fonctionne! C'est super logique!
┌─────────────────────────────────────────┐
│ 🎁 IMPL = DONNER CAPACITÉS 🎁 │
├─────────────────────────────────────────┤
│ │
│ struct Personne { ... } │
│ │ │
│ ▼ impl Parler for Personne │
│ ┌─────────────┐ │
│ │ Capacités │ → dire_bonjour() │
│ └─────────────┘ │
│ │
│ Personne peut maintenant parler! ✅ │
│ │
└─────────────────────────────────────────┘
Mnémonique: "Donner Capacités" - Implémenter un trait, c'est donner des capacités à un type, comme donner un cadeau!
trait Parler {
fn dire_bonjour(&self);
}
struct Personne {
nom: String,
}
impl Parler for Personne {
fn dire_bonjour(&self) {
println!("Bonjour, je suis {}", self.nom);
}
}
fn main() {
let p = Personne { nom: String::from("Alice") };
p.dire_bonjour();
}