IIterator<T> Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Supporta un'iterazione semplice su una raccolta.
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)
Parametri di tipo
- T
- Derivato
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0)
|
API contract |
Windows.Foundation.FoundationContract (è stato introdotto in v1.0)
|
Commenti
L'interfaccia IIterator T> non è nascosta in modo esplicito<dalla proiezione del linguaggio per .NET, ma l'interfaccia IIterable\<T\> è nascosta. Per la maggior parte degli scenari .NET che richiedono specificamente un'API per l'oggetto iteratore, probabilmente si userà IEnumerator<T (forse con un vincolo di tipo specifico) come ottenuto dalla chiamata di IEnumerable T><>. GetEnumerator.
Se le modifiche vengono apportate alla raccolta, ad esempio l'aggiunta, la modifica o l'eliminazione di elementi, l'iteratore può generare un'eccezione per tutte le operazioni.
Funzioni di estensione C++/WinRT
Nota
Le funzioni di estensione esistono nei tipi di proiezione C++/WinRT per determinate API Windows Runtime. Ad esempio, winrt::Windows::Foundation::IAsyncAction è il tipo di proiezione C++/WinRT per IAsyncAction. Le funzioni di estensione non fanno parte della superficie dell'interfaccia binaria dell'applicazione (ABI) dei tipi di Windows Runtime effettivi, pertanto non sono elencati come membri delle API Windows Runtime. È tuttavia possibile chiamarli da qualsiasi progetto C++/WinRT. Vedere funzioni C++/WinRT che estendono Windows Runtime API.
operator++();
operator++(int);
Questi operatori consentono cicli a intervalli su Windows Runtime oggetti iterabili. L'operatore prefisso e postfix ++
avanza l'iteratore e lo imposta su nullptr
se l'iteratore è stato completato.
T operator*() const;
La dereferenza dell'iteratore equivale a chiamare 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;
Tipi annidati che migliorano l'interoperabilità con iteratori C++.
Proprietà
Current |
Ottiene l'elemento corrente dell'insieme. |
HasCurrent |
Ottiene un valore che indica se l'iteratore fa riferimento a un elemento corrente o è alla fine della raccolta. |
Metodi
GetMany(T[]) |
Recupera più elementi dall'iteratore.
|
MoveNext() |
Passa l'iteratore all'elemento successivo della raccolta. |