Condividi tramite


IIterable<T> Interfaccia

Definizione

Espone un iteratore che supporta un'iterazione semplice su una raccolta di un tipo specificato.

.NET Questa interfaccia viene visualizzata come System.Collections.Generic.IEnumerable<T>. In ogni caso in cui un tipo di Windows Runtime ha implementato IIterable<T>, il codice .NET può usare invece le API di IEnumerable<T>. Il codice C# può usare foreach, il codice Visual Basic può usare For Each... Avanti. Tutti i metodi di estensione .NET basati su IEnumerable<T> e inclusi in .NET per le app UWP sono accessibili (incluse le estensioni System.Linq , purché tu abbia incluso lo spazio dei nomi).

public interface class IIterable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(4205151722, 25108, 16919, 175, 218, 127, 70, 222, 88, 105, 179)]
template <typename T>
struct IIterable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(4205151722, 25108, 16919, 175, 218, 127, 70, 222, 88, 105, 179)]
public interface IEnumerable<T>
Public Interface IEnumerable(Of T)

Parametri di tipo

T
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

Quando si programma con .NET, questa interfaccia è nascosta e gli sviluppatori devono usare l'interfaccia System.Collections.Generic.IEnumerable<T> . A causa della modalità di esecuzione delle proiezioni, il metodo GetEnumerator non è sempre disponibile come metodo chiamabile diretto sui tipi che proiettano IEnumerable<T> come implementato, ma l'enumerazione della raccolta con la sintassi di enumerazione standard (foreach) è ancora supportata. Il compilatore esegue automaticamente il cast dei tipi e non è necessario eseguire il cast in IEnumerable modo esplicito. Se è necessario eseguire il cast in modo esplicito, ad esempio se si vuole chiamare GetEnumerator da una classe, eseguire il cast a IEnumerab<T> usando un vincolo nel cast che corrisponde al tipo di elemento della raccolta.

Funzioni di estensione C++/WinRT

Nota

Le funzioni di estensione esistono nei tipi di proiezione C++/WinRT per determinate API di 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 ABI (Application Binary Interface) dei tipi di Windows Runtime effettivi, quindi non sono elencati come membri delle API Windows Runtime. Ma puoi chiamarli da qualsiasi progetto C++/WinRT. Vedi Funzioni C++/WinRT che estendono Windows Runtime API.

auto begin() const;

Restituisce un iteratore al primo elemento della raccolta, da usare in algoritmi C++, ad esempio cicli basati su for intervalli.

auto end() const;

Restituisce un iteratore a un oltre l'ultimo elemento della raccolta, da usare in algoritmi C++, ad esempio cicli basati su for intervalli.

Metodi

First()

Restituisce un iteratore per gli elementi dell'insieme.

Si applica a

Vedi anche