vector-Klasse
Die STL-Vektorklasse ist eine Klassenvorlage, die Elemente eines bestimmten Typs in einer linearen Anordnung speichert und einen schnellen wahlfreien Zugriff auf ein beliebiges Element ermöglicht. Die Vektorklasse sollte der bevorzugte Container für eine Sequenz sein, wenn Leistung bei wahlfreiem Zugriff ein wichtiger Faktor ist. Wenn Sie nicht sicher sind, welche Art von Sequenzcontainer Sie verwenden sollen, verwenden Sie Vektor.
template <
class Type,
class Allocator = allocator<Type>
>
class vector
Parameter
Typ
Der Typ des Elements, das im Vektor gespeichert werden soll.Allocator
Der Typ des Objekts, das Arbeitsspeicher für den Vektor zuweist und freigibt. Dieses Argument ist optional, und der Standardwert ist std::allocator*<Typ>.*
Hinweise
Vektoren ermöglichen konstante Zeiteinfügungen und -löschungen am Ende der Sequenz. Für das Einfügen oder Löschen von Elementen in der Mitte eines Vektors ist lineare Zeit erforderlich. Der Container der deque-Klasse ist in Bezug auf Einfügungen und Löschungen am Anfang und Ende einer Sequenz leistungsfähiger. Der Container der list-Klasse ist in Bezug auf Einfügungen und Löschungen an einer beliebigen Position innerhalb der Sequenz leistungsfähiger.
Eine Vektorneuzuordnung findet statt, wenn eine Memberfunktion die Anzahl der Elemente im Vektor über die aktuelle Speicherkapazität hinaus erhöhen muss. Andere Einfügungen und Löschungen können verschiedene Speicheradressen innerhalb der Sequenz ändern. In allen diesen Fällen werden Iteratoren oder Verweise auf geänderte Teile der Sequenz ungültig. Wenn keine Neuzuordnung stattfindet, bleiben nur Iteratoren und Verweise vor dem Einfüge-/Löschpunkt gültig.
Die vector<bool>-Klasse ist eine vollständige Spezialisierung des Klassenvorlagenvektors für Elemente vom Typ „bool“ mit einer Zuweisung für den zugrunde liegenden Typ, der von der Spezialisierung verwendet wird.
Die vector<bool> reference-Klasse ist eine geschachtelte Klasse, deren Objekte Verweise auf Elemente (einzelne Bits) in einem vector<bool>-Objekt bereitstellen können.
Mitglieder
Konstruktoren
Erstellt einen Vektor einer bestimmten Größe bzw. mit Elementen eines bestimmten Werts oder mit einem bestimmten allocator-Element oder als vollständige bzw. teilweise Kopie eines anderen Vektors. |
Typedefs
Der Typ der allocator, die vom Vektor verwendet wird. |
|
Ein Typ, der einen schreibgeschützten Iterator mit wahlfreiem Zugriff darstellt. |
|
Ein Typ, der einen schreibgeschützten Zeiger auf ein Element in einem Vektor darstellt. |
|
Ein Verweis auf ein const-Element, das in einem Vektor zum Lesen und Ausführen von const-Vorgängen gespeichert ist. |
|
Ein schreibgeschützter umgekehrter Iterator. |
|
Ein Typ, der die Differenz zwischen den Adressen von zwei Elementen in einem Vektor darstellt. |
|
Ein Typ, der einen Iterator mit wahlfreiem Zugriff bereitstellt, mit dem jedes Element in einem Vektor gelesen oder geändert werden kann. |
|
Ein Typ, der einen Zeiger auf ein Element in einem Vektor darstellt. |
|
Ein Typ, der einen Verweis auf ein Element in einem Vektor darstellt. |
|
Ein Typ, der einen reverse_iterator darstellt. |
|
Ein Typ, der die Anzahl von Elementen in einem Vektor darstellt. |
|
Ein Typ, der den in einem Vektor gespeicherten Datentyp darstellt. |
Memberfunktionen
Ersetzt die angegebenen Elemente durch Kopien der neuen Elemente. |
|
Gibt einen Verweis auf das Element an einer angegebenen Position im Vektor zurück und löst eine out_of_range-Ausnahme aus, wenn der Index kleiner als 0 oder größer gleich size() ist. |
|
Gibt einen Verweis auf das letzte Element des Vektors zurück. |
|
Gibt einen Iterator mit wahlfreiem Zugriff für das erste Element im Vektor zurück. |
|
Gibt die Anzahl von Elementen zurück, die der Vektor enthalten kann, ohne zusätzlichen Speicher zuzuweisen. |
|
Gibt einen const-Iterator mit wahlfreiem Zugriff für das erste Element im Vektor zurück. |
|
Gibt einen const-Iterator mit wahlfreiem Zugriff zurück, der auf ein Pastj am Ende des Vektors zeigt. |
|
Gibt einen const_reverse_iterator für das letzte Element in einem Vektor zurück. |
|
Gibt einen const_reverse_iterator zurück, der auf eine Stelle vor dem ersten Element im Vektor verweist. |
|
Löscht die Elemente des Vektors. |
|
Gibt einen Zeiger auf das erste Element im Vektor zurück. |
|
Fügt ein direkt konstruiertes Element an einer angegebenen Position in den Vektor ein. |
|
Fügt ein direkt konstruiertes Element am Ende des Vektors ein. |
|
Testet, ob der Vektor Elemente enthält. |
|
Gibt einen Iterator mit wahlfreiem Zugriff zurück, der auf eine Stelle hinter dem letzten Element im Vektor verweist. |
|
Entfernt ein Element oder eine Reihe von Elementen aus angegebenen Positionen in einem Vektor. |
|
Gibt einen Verweis auf das erste Element in einem Vektor zurück. |
|
Gibt den vom Vektor verwendeten allocator zurück. |
|
Fügt ein Element oder eine Reihe von Elementen an einer angegebenen Position in den Vektor ein. |
|
Gibt die Maximallänge des Vektors zurück. |
|
Löscht das Element am Ende des Vektors. |
|
Fügt ein Element am Ende des Vektors hinzu. |
|
Gibt einen Iterator an das erste Element in einem umgekeherten Vektor zurück. |
|
Gibt einen reverse_iterator zurück, der auf eine Stelle vor dem ersten Element verweist. |
|
Reserviert eine Mindestspeicherlänge für ein Vektorobjekt. |
|
Gibt eine neue Größe für einen Vektor an. |
|
Verwirft Überkapazität. |
|
Gibt die Anzahl von Elementen im Vektor zurück. |
|
Tauscht die Elemente zweier Vektoren aus. |
Operatoren
Gibt einen Verweis auf das Vektorelement an einer angegebenen Position zurück. |
|
Ersetzt die Elemente des Vektors durch eine Kopie eines anderen Vektors. |
Anforderungen
Header: <vector>
Namespace: std
Siehe auch
Referenz
Threadsicherheit in der C++-Standardbibliothek