IVector<T> Interfaccia

Definizione

Rappresenta una raccolta di elementi di accesso casuale.

.NET Questa interfaccia viene visualizzata come codice .NET come System.Collections.Generic.IList<T> a causa della proiezione del linguaggio .NET. In qualsiasi caso, in cui un tipo di Windows Runtime ha implementato IVector<T, il codice .NET può usare invece le API di IList<T>>.

public interface class IVector : IIterable<T>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2436052969, 4513, 17221, 163, 162, 78, 127, 149, 110, 34, 45)]
template <typename T>
struct IVector : IIterable<T>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(2436052969, 4513, 17221, 163, 162, 78, 127, 149, 110, 34, 45)]
public interface IList<T> : IEnumerable<T>
Public Interface IList(Of T)
Implements IEnumerable(Of T)

Parametri di tipo

T
Attributi
Implementazioni

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.IList<T> se vogliono implementare un tipo vector/list. In qualsiasi caso, in cui un tipo di Windows Runtime ha implementato IVector<T, il codice .NET può usare invece le API di IList<T>>. Include tutte le API di Windows Runtime esistenti e anche scenari come l'uso delle API di Windows Runtime componenti originariamente implementati nelle estensioni dei componenti visual C++ (C++/CX) da un'app C# o Visual Basic.

L'interfaccia IVector<T> rappresenta una raccolta di oggetti di un tipo specificato a cui è possibile accedere singolarmente per indice. Proprietà e metodi di IVector<T> supportano funzionalità di tipo elenco, ad esempio ottenere le dimensioni della raccolta e aggiungere e rimuovere elementi in posizioni specificate nella raccolta. Inoltre, il metodo GetView fornisce uno snapshot del vettore il cui stato osservabile non cambia. Lo snapshot è utile quando è necessaria una visualizzazione della raccolta per fare riferimento alle operazioni successive che coinvolgono IVector<T>.

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.

auto begin() const;

Restituisce un iteratore al primo elemento della raccolta, per l'uso negli algoritmi C++, ad esempio cicli basati su for intervalli.

auto end() const;

Restituisce un iteratore a un altro oltre l'ultimo elemento della raccolta, per l'uso in algoritmi C++ come cicli basati su for intervalli.

Ereditarietà dell'interfaccia

IVector eredita IIterable. I tipi che implementano IVector implementano anche i membri dell'interfaccia di IIterable. Analogamente, se si usa .NET, è disponibile il supporto per IEnumerable<T>.

Proprietà

Size

Ottiene il numero di elementi nel vettore.

Metodi

Append(T)

Aggiunge un elemento alla fine del vettore.

Clear()

Rimuove tutti gli elementi dal vettore.

GetAt(UInt32)

Restituisce l'elemento in corrispondenza dell'indice specificato nel vettore.

GetMany(UInt32, T[])

Recupera più elementi dal vettore a partire dall'indice specificato.

C++/WinRT La sintassi corretta per la proiezione del linguaggio C++/WinRT è uint32_t GetMany(uint32_t startIndex, winrt::array_view<T> items);.

GetView()

Restituisce una visualizzazione non modificabile del vettore.

IndexOf(T, UInt32)

Recupera l'indice di un elemento specificato nel vettore.

InsertAt(UInt32, T)

Inserisce un elemento in corrispondenza di un indice specificato nel vettore.

RemoveAt(UInt32)

Rimuove l'elemento in corrispondenza dell'indice specificato nel vettore.

RemoveAtEnd()

Rimuove l'ultimo elemento dal vettore.

ReplaceAll(T[])

Sostituisce tutti gli elementi nel vettore con gli elementi specificati.

SetAt(UInt32, T)

Imposta il valore in corrispondenza dell'indice specificato nel vettore.

Si applica a

Vedi anche