In diesem Artikel werden Iteratoren in Rust, ihre Implementierung und die Verwendung von ihnen erörtert.
Rost -Iterator
Ein Iterator bezieht sich auf eine Funktion, mit der Sie eine Abfolge von Elementen durch „gehen“ können. Wie bereits erwähnt, könnte es über jedes Element in einem Array iteriert werden.
Iteratoren in Rost sind faul. Dies bedeutet, dass der Iterator die Anzahl der Elemente, die er „durchgehen“, nicht vorher kennen muss. Es bestimmt das nächste Element, wenn er angefordert wird.
Rost -Iterator -Merkmal
Iteratoren werden durch das in der Rust Standard Library definierte Iterator -Merkmal implementiert. Dies bedeutet.
Die Syntax für das Iteratormerkmal ist wie gezeigt:
Pub Trait IteratorUm das Iterator -Merkmal für benutzerdefinierte Typen zu implementieren, müssen wir die nächste Methode definieren, die ein Element zu einem Zeitpunkt zurückgibt, der als einige () oder keine, wenn die Iteration abgeschlossen ist.
Betrachten Sie den folgenden Code, der einen Iterator für eine benutzerdefinierte Struktur implementiert:
StructCountHier haben wir eine Struktur, die einen Wert von i32 hat. Als nächstes kommt ein Count -Konstruktor für die Struktur. Wir implementieren auch einen Iterator für die Struktur mithilfe der nächsten Funktion. Dies gibt das nächste Element in der Sequenz zurück.
Hinweis: Der Rückgabewert ist die Option.
Auf diese Weise können wir keine zurückgeben, wenn es keinen nächsten Artikel gibt.
Dann können wir diesen Iterator als:
Denn ich in count :: new ()Abschluss
In diesem Artikel wurde die Art des Rost -Iterators und seine Bedeutung erörtert. Darüber hinaus haben wir uns mit dem Rost -Iterator -Merkmal und den Methoden zur Implementierung des Rost -Iterators in benutzerdefinierten Typen befasst. Wir hoffen, Sie haben diesen Artikel hilfreich gefunden. Weitere Tipps und Informationen finden Sie in den anderen Linux -Hinweisartikeln.