IVectorView<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 visualizzazione non modificabile in un vettore.
.NET Questa interfaccia appare come codice .NET come System.Collections.Generic.IReadOnlyList<T> a causa della proiezione del linguaggio .NET. In ogni caso in cui un tipo di Windows Runtime ha implementato IVectorView<T>, il codice .NET può usare invece le API di IReadOnlyList<T>.
public interface class IVectorView : IIterable<T>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(3152149068, 45283, 17795, 186, 239, 31, 27, 46, 72, 62, 86)]
template <typename T>
struct IVectorView : IIterable<T>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(3152149068, 45283, 17795, 186, 239, 31, 27, 46, 72, 62, 86)]
public interface IReadOnlyList<T> : IEnumerable<T>
Public Interface IReadOnlyList(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
Per le raccolte di lettura/scrittura, l'interfaccia IVectorView<T> è ancora rilevante perché il metodo IVector.GetView restituisce un'istanza di IVectorView<T> .
Se la raccolta sottostante cambia, i metodi e le proprietà dell'interfaccia IVectorView<T> possono generare un'eccezione.
C++/WinRT Se la raccolta sottostante è stata modificata, i metodi e le proprietà possono generare un'eccezione
hresult_changed_state
.
C++/CX Se la raccolta sottostante è stata modificata, i metodi e le proprietà possono generare un'eccezione
ChangedStateException
.
Durante la programmazione con .NET, questa interfaccia è nascosta e gli sviluppatori devono usare l'interfaccia T> IReadOnlyList<se vogliono implementare un tipo vettore/elenco di sola lettura. In ogni caso in cui un tipo di Windows Runtime ha implementato IVectorView<T>, il codice .NET può usare invece le API di IReadOnlyList<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.
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
IVectorView eredita IIterable. I tipi che implementano IVectorView 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 nella visualizzazione vettoriale. |
Metodi
GetAt(UInt32) |
Restituisce l'elemento in corrispondenza dell'indice specificato nella visualizzazione vettoriale. |
GetMany(UInt32, T[]) |
Recupera più elementi dalla visualizzazione vettoriale a partire dall'indice specificato.
|
IndexOf(T, UInt32) |
Recupera l'indice di un elemento specificato nella visualizzazione vettoriale. |