IVector<T> Schnittstelle

Definition

Stellt eine Zufällige Zugriffsauflistung von Elementen dar.

.NET Diese Schnittstelle scheint .NET-Code als System.Collections.Generic.IList<T> aufgrund der .NET-Sprachprojektion anzuzeigen. In jedem Fall, in dem ein Windows 运行时 Typ IVector<T> implementiert hat, kann .NET-Code stattdessen die APIs von IList<T> verwenden.

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)

Typparameter

T
Attribute
Implementiert

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.FoundationContract (eingeführt in v1.0)

Hinweise

Bei der Programmierung mit .NET ist diese Schnittstelle ausgeblendet, und Entwickler sollten die System.Collections.Generic.IList<T-Schnittstelle> verwenden, wenn sie einen Vektor-/Listentyp implementieren möchten. In jedem Fall, in dem ein Windows 运行时 Typ IVector<T> implementiert hat, kann .NET-Code stattdessen die APIs von IList<T> verwenden. Dazu gehören alle vorhandenen Windows 运行时-API und auch Szenarien wie die Verwendung der APIs Windows 运行时 Komponenten, die ursprünglich in Visual C++-Komponentenerweiterungen (C++/CX) aus einer C#- oder Visual Basic-App implementiert wurden.

Die IVector<T-Schnittstelle> stellt eine Auflistung von Objekten eines angegebenen Typs dar, auf die einzeln nach Index zugegriffen werden kann. Eigenschaften und Methoden von IVector<T> unterstützen Listentypfunktionen, z. B. Abrufen der Größe der Auflistung und Hinzufügen und Entfernen von Elementen an bestimmten Speicherorten in der Auflistung. Darüber hinaus stellt die GetView-Methode eine Momentaufnahme des Vektors bereit, dessen beobachtbarer Zustand sich nicht ändert. Die Momentaufnahme ist nützlich, wenn Sie eine Ansicht der Auflistung benötigen, auf die in nachfolgenden Vorgängen verwiesen werden soll, die IVector<T> umfassen.

C++/WinRT-Erweiterungsfunktionen

Hinweis

Erweiterungsfunktionen sind in den C++/WinRT-Projektionstypen für bestimmte Windows 运行时 APIs vorhanden. Beispielsweise ist winrt::Windows::Foundation::IAsyncAction der C++/WinRT-Projektionstyp für IAsyncAction. Die Erweiterungsfunktionen sind nicht Teil der ABI-Oberfläche (Application Binary Interface) der tatsächlichen Windows 运行时 Typen, sodass sie nicht als Mitglieder der Windows 运行时-APIs aufgeführt sind. Sie können sie jedoch innerhalb eines beliebigen C++/WinRT-Projekts aufrufen. Weitere Informationen finden Sie unter C++/WinRT-Funktionen, die Windows 运行时 APIs erweitern.

auto begin() const;

Gibt einen Iterator an das erste Element der Auflistung zurück, für die Verwendung in C++-Algorithmen wie bereichsbasierte for Schleifen.

auto end() const;

Gibt einen Iterator an eine über das letzte Element der Auflistung zurück, um in C++-Algorithmen wie bereichsbasierte for Schleifen zu verwenden.

Schnittstellenvererbung

IVector erbt IIterable. Typen, die IVector implementieren, implementieren auch die Schnittstellenelemente von IIterable. Wenn Sie .NET verwenden, gibt es auch Unterstützung für IEnumerable<T>.

Eigenschaften

Size

Ruft die Anzahl der Elemente im Vektor ab.

Methoden

Append(T)

Fügt ein Element am Ende des Vektors an.

Clear()

Entfernt alle Elemente aus dem Vektor.

GetAt(UInt32)

Gibt das Element am angegebenen Index im Vektor zurück.

GetMany(UInt32, T[])

Ruft mehrere Elemente vom Vektor ab dem angegebenen Index ab.

C++/WinRT Die richtige Syntax für die C++/WinRT-Sprachprojektion ist uint32_t GetMany(uint32_t startIndex, winrt::array_view<T> items);.

GetView()

Gibt eine unveränderliche Ansicht des Vektors zurück.

IndexOf(T, UInt32)

Ruft den Index eines angegebenen Elements im Vektor ab.

InsertAt(UInt32, T)

Fügt ein Element an einem angegebenen Index in den Vektor ein.

RemoveAt(UInt32)

Entfernt das Element am angegebenen Index im Vektor.

RemoveAtEnd()

Entfernt das letzte Element aus dem Vektor.

ReplaceAll(T[])

Ersetzt alle Elemente im Vektor durch die angegebenen Elemente.

SetAt(UInt32, T)

Legt den Wert am angegebenen Index im Vektor fest.

Gilt für:

Siehe auch