Freigeben über


Platform::Collections::Vector-Klasse

Stellt eine sequenzielle Auflistung von Objekten dar, auf die einzeln über einen Index zugegriffen werden kann. Implementiert Windows::Foundation::Collections::IObservableVector, um die XAML-Datenbindung zu unterstützen.

Syntax

template <typename T, typename E>
   ref class Vector sealed;

Parameter

T
Der Typ der im Vektorobjekt enthaltenen Elemente.

E
Gibt ein binäres Prädikat zum Testen der Gleichheit mit Werten vom Typ T an. Der Standardwert ist std::equal_to<T>.

Hinweise

Folgende Typen sind zulässig:

  1. integers

  2. Schnittstellenklasse^

  3. Öffentliche Referenzklasse^

  4. value struct

  5. Öffentliche Enumerationsklasse

Die Vector-Klasse ist die konkrete C++-Implementierung der Windows::Foundation::Collections::IVector-Schnittstelle .

Wenn Sie versuchen, einen Vector-Typ in einem öffentlichen Rückgabewert oder Parameter zu verwenden, wird der Compilerfehler C3986 ausgelöst. Sie können den Fehler beheben, indem Sie den Typ des Parameters oder des Rückgabewerts in Windows::Foundation::Collections::IVectorändern. Weitere Informationen finden Sie unter Auflistungen (C++/CX).

Member

Öffentliche Konstruktoren

Name Beschreibung
Vector::Vector Initialisiert eine neue Instanz der Vector-Klasse.

Öffentliche Methoden

Name Beschreibung
Vector::Append Fügt das angegebene Element nach dem letzten Element im aktuellen Vektor ein.
Vector::Clear Löscht alle Elemente im aktuellen Vector.
Vector::First Gibt einen Iterator zurück, der das erste Element im Vektor angibt.
Vector::GetAt Ruft das Element des aktuellen Vector ab, das durch den angegebenen Index bezeichnet wird.
Vector::GetMany Ruft eine Sequenz von Elementen vom aktuellen Vektor ab, die am angegebenen Index beginnt.
Vector::GetView Gibt eine schreibgeschützte Ansicht eines Vektors zurück; also Platform::Collections::VectorView.
Vector::IndexOf Sucht das angegebene Element im aktuellen Vector und gibt, wenn es gefunden wurde, den Index des Elements zurück.
Vector::InsertAt Fügt das angegebene Element an dem durch den angegebenen Index identifizierten Element in den aktuellen Vektor ein.
Vector::ReplaceAll Löscht die Elemente im aktuellen Vektor und fügt dann die Elemente aus dem angegebenen Array ein.
Vector::RemoveAt Löscht das Element, das durch den angegebenen Index von dem aktuellen Vektor identifiziert wird.
Vector::RemoveAtEnd Löscht das Element am Ende des aktuellen Vektors.
Vector::SetAt Weist den angegebenen Wert dem Element im aktuellen Vektor zu, der vom angegebenen Index identifiziert wird.
Vector::Size Gibt die Anzahl von Elementen im aktuellen Vector-Objekt zurück.

Ereignisse

Name Beschreibung
event Windows::Foundation::Collection::VectorChangedEventHandler<T>^ VectorChanged Tritt auf, wenn sich der Vektor ändert.

Vererbungshierarchie

Vector

Anforderungen

Header: collection.h

Namespace: Platform::Collections

Vector::Append-Methode

Fügt das angegebene Element nach dem letzten Element im aktuellen Vektor ein.

Syntax

virtual void Append(T item);

Parameter

Index
Das Element, das in den Vektor eingefügt werden soll. Der Typ des Elements wird durch den T-Typnamen definiert.

Vector::Clear-Methode

Löscht alle Elemente im aktuellen Vector.

Syntax

virtual void Clear();

Vector::First-Methode

Gibt einen Iterator zurück, der auf das erste Element im Vektor verweist.

Syntax

virtual Windows::Foundation::Collections::IIterator <T>^ First();

Rückgabewert

Ein Iterator, der auf das erste Element im Vektor verweist.

Hinweise

Eine bequeme Möglichkeit zum Speichern des iterators, der von First() zurückgegeben wird, ist das Zuweisen des Rückgabewerts zu einer Variablen, die mit dem auto Schlüsselwort "Typabzug" deklariert wird. Beispiel: auto x = myVector->First();. Dieser Iterator kennt die Länge der Auflistung.

Wenn Sie ein Iteratorpaar benötigen, um an eine STL-Funktion zu übergeben, verwenden Sie die kostenlosen Funktionen Windows::Foundation::Collections::begin und Windows::Foundation::Collections::end

Vector::GetAt-Methode

Ruft das Element des aktuellen Vector ab, das durch den angegebenen Index bezeichnet wird.

Syntax

virtual T GetAt(unsigned int index);

Parameter

Index
Eine nullbasierte, ganze Zahl ohne Vorzeichen, die ein bestimmtes Element im Vector-Objekt spezifiziert.

Rückgabewert

Das vom Indexparameter angegebene Element. Der Elementtyp wird durch den T-Typnamen definiert.

Vector::GetMany-Methode

Ruft eine Sequenz von Elementen vom aktuellen Vektor ab, die am angegebenen Index beginnt, und kopiert sie in das vom Aufrufer reservierten Array.

Syntax

virtual unsigned int GetMany(
    unsigned int startIndex,
    Platform::WriteOnlyArray<T>^ dest);

Parameter

startIndex
Der nullbasierte Index des Anfangs der Elemente, die abgerufen werden sollen.

dest
Ein vom Aufrufer zugewiesenes Array von Elementen, die mit dem durch startIndex angegebenen Element beginnen und am letzten Element im Vector enden.

Rückgabewert

Die Anzahl der abgerufenen Elemente.

Hinweise

Diese Funktion ist nicht für die direkte Verwendung durch Clientcode vorgesehen. Sie wird intern in der to_vector-Funktion verwendet, um eine effiziente Konvertierung von Platform::Vector-Intances in std::vector-Instanzen zu ermöglichen.

Vector::GetView-Methode

Gibt eine schreibgeschützte Ansicht eines Vektors zurück, das heißt, eine IVectorView.

Syntax

Windows::Foundation::Collections::IVectorView<T>^ GetView();

Rückgabewert

Ein IVectorView-Objekt.

Vector::IndexOf-Methode

Sucht das angegebene Element im aktuellen Vector und gibt, wenn es gefunden wurde, den Index des Elements zurück.

Syntax

virtual bool IndexOf(T value, unsigned int* index);

Parameter

value
Das Element, das gesucht werden soll.

Index
Der nullbasierte Index des Elements, wenn der Parameterwert gefunden wird; andernfalls 0.

Der Indexparameter ist 0, wenn das Element entweder das erste Element des Vectors ist oder das Element nicht gefunden wurde. Wenn der Rückgabewert lautet true, wurde das Element gefunden, und es handelt sich um das erste Element. Andernfalls wurde das Element nicht gefunden.

Rückgabewert

truewenn das angegebene Element gefunden wird; andernfalls . false

Hinweise

IndexOf verwendet std::find_if, um das Element zu suchen. Benutzerdefinierte Elementtypen sollten deshalb den Operator == und != überladen, um die Übereinstimmungsvergleiche zu ermöglichen, die für "find_if" erforderlich sind.

Vector::InsertAt-Methode

Fügt das angegebene Element an dem durch den angegebenen Index identifizierten Element in den aktuellen Vektor ein.

Syntax

virtual void InsertAt(unsigned int index, T item)

Parameter

Index
Eine nullbasierte, ganze Zahl ohne Vorzeichen, die ein bestimmtes Element im Vector-Objekt spezifiziert.

item
Ein Element, das an dem durch Index angegebenen Element in den Vector eingefügt werden soll. Der Typ des Elements wird durch den T-Typnamen definiert.

Vector::RemoveAt-Methode

Löscht das Element, das durch den angegebenen Index von dem aktuellen Vektor identifiziert wird.

Syntax

virtual void RemoveAt(unsigned int index);

Parameter

Index
Eine nullbasierte, ganze Zahl ohne Vorzeichen, die ein bestimmtes Element im Vector-Objekt spezifiziert.

Vector::RemoveAtEnd-Methode

Löscht das Element am Ende des aktuellen Vektors.

Syntax

virtual void RemoveAtEnd();

Vector::ReplaceAll-Methode

Löscht die Elemente im aktuellen Vektor und fügt dann die Elemente aus dem angegebenen Array ein.

Syntax

virtual void ReplaceAll(const ::Platform::Array<T>^ arr);

Parameter

Arr
Ein Array von Objekten, deren Typ durch den T-Typnamen definiert ist.

Vector::SetAt-Methode

Weist den angegebenen Wert dem Element im aktuellen Vektor zu, der vom angegebenen Index identifiziert wird.

Syntax

virtual void SetAt(unsigned int index, T item);

Parameter

Index
Eine nullbasierte, ganze Zahl ohne Vorzeichen, die ein bestimmtes Element im Vector-Objekt spezifiziert.

item
Der dem angegebenen Element zuzuweisende Wert. Der Typ des Elements wird durch den T-Typnamen definiert.

Vector::Size-Methode

Gibt die Anzahl von Elementen im aktuellen Vector-Objekt zurück.

Syntax

virtual property unsigned int Size;

Rückgabewert

Die Anzahl der Elemente im aktuellen Vector.

Vector::Vector-Konstruktor

Initialisiert eine neue Instanz der Vector-Klasse.

Syntax

Vector();

explicit Vector(unsigned int size);
Vector( unsigned int size, T value);
template <typename U> explicit Vector( const ::std::vector<U>& v);
template <typename U> explicit Vector( std::vector<U>&& v);

Vector( const T * ptr, unsigned int size);
template <size_t N> explicit Vector(const T(&arr)[N]);
template <size_t N> explicit Vector(const std::array<T, N>& a);
explicit Vector(const Array<T>^ arr);

template <typename InIt> Vector(InIt first, InIt last);
Vector(std::initializer_list<T> il);

Parameter

a
Ein std::array , das zum Initialisieren des Vectors verwendet wird.

Arr
Eine Platform::Array , die verwendet wird, um den Vektor zu initialisieren.

Anfang
Der Typ einer Auflistung von Objekten, die verwendet werden, um den aktuelle Vector zu initialisieren.

Il
A std::initializer_list of objects of type T that will be used to initialize the Vector.

N
Die Anzahl von Elementen in einer Auflistung von Objekten, die verwendet wird, um den aktuellen Vector zu initialisieren.

size
Die Anzahl von Elementen im Vector.

value
Ein Wert, der verwendet wird, um die einzelnen Elemente im aktuellen Vector zu initialisieren.

v
Lvalues und Rvalues to a std::vector that is used to initialize the current Vector.

ptr
Zeiger zu std::vector, der verwendet wird, um den aktuellen Vector zu initialisieren.

first
Das erste Element in einer Sequenz von Objekten, die verwendet werden, um den aktuellen Vector zu initialisieren. Die Art des ersten wird durch perfekte Weiterleitung übergeben. Weitere Informationen finden Sie unter RValue-Verweisdeklarator: &&.

last
Das letzte Element in einer Sequenz von Objekten, die verwendet werden, um den aktuellen Vector zu initialisieren. Die Art der letzten wird durch perfekte Weiterleitung übergeben. Weitere Informationen finden Sie unter RValue-Verweisdeklarator: &&.

Siehe auch

Sammlungen (C++-CX)
Plattformnamespace
Erstellen von Komponenten für Windows-Runtime in C++