Des traits prédéfinis essentiels : les itérateurs Itérateur

Définitions

Un itérateur est un objet qui permet de parcourir tous les éléments d’une collection (une liste par exemple). Nous aurons l’occasion d’en utiliser souvent dans le chapitre ultérieur dédié aux collections, Autres collections en langage Rust.

À travers sa librairie standard, le langage C++ propose l’usage d’un itérateur implicite.

En langage C#, il existe une interface IEnumerator qu’il s’agit d’implémenter pour pouvoir obtenir un itérateur :

interface IEnumerator { 
    void Reset(); 
    bool MoveNext(); 
    object Current { get; } 
} 

On est plus ou moins dans la même situation qu’en C#, en langage Rust, avec l’existence d’un trait prédéfini nommé :

pub trait Iterator { 
    type Item; 
 
    fn next(&mut self) -> Option<Self::Item>; 
} Iterator 

Ce trait possède d’autres méthodes dont il fournit l’implémentation. Une seule méthode n’est pas implémentée, c’est à l’entité qui l’implémente de le faire : la méthode next, qui permet de passer à l’élément suivant. C’est un type Option...

Pour consulter la suite, découvrez le livre suivant :
couv_EIRUST.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Introduction
Suivant
Notion de surcharge d'opérateurs