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 O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.