6.2 Eigene Enumeratoren erstellen

Problem

Sie müssen einer Klasse foreach-Unterstützung hinzufügen, aber der übliche Weg, einen Iterator hinzuzufügen (d.h., auf einem Typ IEnumerable zu implementieren und dann aus einer Member-Funktion eine Referenz auf dieses IEnumerable zurückzuliefern), ist nicht flexibel genug. Anstatt die Liste einfach nur vom ersten bis zum letzten Element zu durchlaufen, müssen Sie sie auch vom letzten zum ersten Element durchlaufen können und brauchen außerdem auch noch eine Möglichkeit, bei jedem Durchlauf eine vorgegebene Anzahl von Elementen überspringen zu können. Sie möchten in Ihrer Klasse Iteratoren bereitstellen, die all das ermöglichen.

Lösung

Die Klasse Container<T>, die in Beispiel 6-2 gezeigt wird, dient als ein ...

Get C# Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.