Freigeben über


IIterator<T> Schnittstelle

Definition

Unterstützt einfache Iterationen über eine Sammlung.

public interface class IIterator
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(1786374243, 17152, 17818, 153, 102, 203, 182, 96, 150, 62, 225)]
template <typename T>
struct IIterator
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(1786374243, 17152, 17818, 153, 102, 203, 182, 96, 150, 62, 225)]
public interface IIterator<T>
Public Interface IIterator(Of T)

Typparameter

T
Abgeleitet
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (eingeführt in v1.0)

Hinweise

Die IIterator<T-Schnittstelle> wird nicht explizit durch die Sprachprojektion für .NET ausgeblendet, aber die IIterable\<T\> -Schnittstelle ist ausgeblendet. Für die meisten .NET-Szenarien, die speziell eine API für das Iteratorobjekt erfordern, verwenden Sie wahrscheinlich IEnumerator<T> (möglicherweise mit einer bestimmten Typeinschränkung), wie sie durch den Aufruf von IEnumerable<T> abgerufen wird. GetEnumerator.

Wenn Änderungen an der Auflistung vorgenommen werden, z. B. das Hinzufügen, Ändern oder Löschen von Elementen, kann der Iterator eine Ausnahme für alle Vorgänge auslösen.

C++/WinRT-Erweiterungsfunktionen

Hinweis

Erweiterungsfunktionen sind für die C++/WinRT-Projektionstypen für bestimmte Windows-Runtime-APIs vorhanden. Winrt::Windows::Foundation::IAsyncAction ist beispielsweise der C++/WinRT-Projektionstyp für IAsyncAction. Die Erweiterungsfunktionen sind nicht Teil der ABI-Oberfläche (Application Binary Interface) der tatsächlichen Windows-Runtime-Typen, daher werden sie nicht als Member der Windows-Runtime-APIs aufgeführt. Sie können sie jedoch in jedem C++/WinRT-Projekt aufrufen. Weitere Informationen finden Sie unter C++/WinRT-Funktionen, die Windows-Runtime-APIs erweitern.

operator++();
operator++(int);

Diese Operatoren ermöglichen bereichsbezogene Schleifen über Windows-Runtime iterierbare Objekte. Der Präfix- und postfix-Operator ++ bringt den Iterator voran und legt ihn auf fest nullptr , wenn der Iterator abgeschlossen wurde.

T operator*() const;

Das Dedeferencing des Iterators entspricht dem Aufrufen von Current.

using iterator_concept= std::input_iterator_tag;
using iterator_catetory = std::input_iterator_tag;
using value_type = T;
using difference_type = ptrdiff_t;
using pointer = void;
using reference = T;

Geschachtelte Typen, die die Interoperabilität mit C++-Iteratoren verbessern.

Eigenschaften

Current

Ruft das aktuelle Element in der Auflistung ab.

HasCurrent

Ruft einen Wert ab, der angibt, ob der Iterator auf ein aktuelles Element verweist oder sich am Ende der Auflistung befindet.

Methoden

GetMany(T[])

Ruft mehrere Elemente aus dem Iterator ab.

C++/WinRT Die richtige Syntax für die C++/WinRT-Sprachprojektion ist uint32_t GetMany(winrt::array_view<T> items);.

MoveNext()

Überschreitet den Iterator zum nächsten Element in der Auflistung.

Gilt für:

Weitere Informationen