IVector<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.
Rappresenta una raccolta di elementi ad accesso casuale.
.NET Questa interfaccia appare come codice .NET come System.Collections.Generic.IList<T> a causa della proiezione del linguaggio .NET. In ogni 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 ogni caso in cui un tipo di Windows Runtime ha implementato IVector<T>, il codice .NET può usare invece le API di IList<T>. Sono inclusi tutti gli scenari esistenti Windows Runtime API, ad esempio l'uso delle API di Windows Runtime componenti implementati originariamente nelle estensioni del componente 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 in base all'indice. Le proprietà e i metodi di IVector<T> supportano la 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 a cui fare riferimento nelle 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 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.
Ereditarietà dell'interfaccia
IVector eredita IIterable. I tipi che implementano IVector implementano anche i membri dell'interfaccia 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.
|
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. |