Der Vektor ist eine Klasse in der Vektorbibliothek, die in das Programm enthalten ist. Aus derselben Vektorklasse können verschiedene Vektorobjekte instanziiert werden. Die Deklaration von Vektorobjekte ohne Speicherzuweisung für die Elemente ist die Instanziierung. Die Erklärung der Vektorobjekte mit Speicherzuweisung für die Elemente ist immer noch die Instanziierung.
Idealerweise erfolgt die Initialisierung während der Instanziierung. Wenn jedoch die Deklaration ohne Speicherzuweisung für die Elemente abgeschlossen wird, muss die Initialisierung durch Zuweisen oder Pushing_back (in), anfängliche Werte, durchgeführt werden.
Diese Informationen geben zwei Situationen für die Initialisierung an: Initialisierung mit Vektorerstellung als Definition oder Initialisierung nach der Deklaration ohne Definition durch Zuweisung (oder Pushing_back in).
Die Erstellung der Vektor kann in zwei Kategorien klassifiziert werden: Vektorerstellung mit Elementen und Vektorerstellung ohne Elemente. Das Ziel dieses Artikels muss interpretiert werden als: Wie man einen Vektor erstellt, wobei alle anfänglichen Elemente Null sind. Um einen Vektor mit allen Elementen Null zu haben, muss der Typ der Elemente int oder float oder deren Varianten sein. Wir werden in diesem Artikel Typ int verwenden.
Initialisierung bei Vektorerstellung mit Elementen
Erstellen mit Initializer_List
Initializer_List ist eine Liste von Werten desselben Typs, die durch Kommas getrennt sind und durch Zahnspangen abgegrenzt werden. Es gibt zwei Syntaxe zum Erstellen eines Vektors mit Initializer_List. Die Syntaxe sind:
Vector & Operator = (Initializer_ListUm einen Vektor mit allen Nullen zu erstellen, sollten alle Werte in der Initializer_List einfach alle Nullen sein. Das folgende Programm zeigt dies anhand der ersten Syntax, in der die Initializer_List dem Vektorobjekt mit dem Zuordnungsoperator zugewiesen ist:
#enthaltenDie Ausgabe ist:
0 0 0 0 0Im Programmkopf wurde die Vektorbibliothek enthalten. Die Vektorerklärung wird in der ersten Aussage in der Hauptfunktion gefunden. Der Vektorinhalt wird im Rest des Codes in der Hauptfunktion angezeigt.
Für die zweite Syntax ist der zweite Parameter optional und wird nicht in das folgende Programm enthalten. Für diese zweite Syntax ist die Initializer_List das Argument der Vektorkonstruktorfunktion. Das folgende Programm zeigt die Verwendung der zweiten Syntax:
#enthaltenDie Ausgabe ist:
0 0 0 0 0Der Eingang betrug fünf Nullen und der Ausgang sind die gleichen fünf Nullen.
Anzahl der im Voraus bekannten Vektorelemente
Die Anzahl der Vektorelemente kann im Voraus bekannt sein, die tatsächlichen Elemente sind jedoch möglicherweise nicht im Voraus bekannt. In diesem Fall sollte der Vektor weiterhin zu Nullen initialisiert werden. Die Vektorerstellungssyntax dafür ist:
Vektor (size_type n, const t & value, const allocator & = allocator ())Der dritte Parameter ist optional und ist nicht Teil des folgenden Programms. Das erste Argument ist die Anzahl der Elemente und das zweite Argument ist der Standardwert, der in diesem Fall für alle Elemente Null ist. Das folgende Programm zeigt, wie diese Syntax für eine Vektorgröße von 5 verwendet wird:
#enthaltenDie Ausgabe ist:
0, 0, 0, 0, 0Initialisierung nach Vektorerstellung ohne Elemente
Hier wird vor der Initialisierung ein leerer Vektor erstellt. Die Syntax zum Erstellen eines leeren Vektors lautet:
vector () noexcept (noexcept (allocator ()): vector (allocator ())Die Syntax, um einem Vektor mit der Initializer_List Anfangwerte zuzuweisen, lautet:
void zuweisen (initializer_listDas folgende Programm erstellt einen leeren Vektor und weist dann den Elementen Nullen zu:
#enthaltenDie Ausgabe ist:
0 0 0 0 0Die erste Anweisung in der Hauptfunktion erstellt den leeren Vektor. Die zweite Anweisung ist die Initialisierung unter Verwendung der Member -Funktion zuordnungs (). Das Argument der Funktion von ordnungsgemäß () ist die Initializer_List mit jedem Element in Null.
Die Syntax, um Standardwerten einem Vektor zuzuweisen, wenn die Anzahl der Elemente im Voraus bekannt ist, lautet:
void ordnen (size_type n, const t & u);Mit dieser Syntax ist das erste Argument die Anzahl der Elemente im Vektor, und das zweite Argument ist der Standardwert. Für die Initialisierung mit Nullen machen Sie einfach den Standardwert Null. Denken Sie daran, dass dies zu tun ist, wenn ein leerer Vektor erstellt wurde. Das folgende Programm zeigt dies:
#enthaltenDie Ausgabe ist:
0 0 0 0 0Zurückdrücken
Nachdem ein leerer Vektor erstellt wurde, kann eine beliebige Anzahl von Nullen für die Initialisierung in den Vektor gedrückt werden, wie im folgenden Programm dargestellt:
#enthaltenDie Ausgabe ist:
0 0 0 0 0Vektor der Standard -Typwerte und Initialisierung
Wenn die Anzahl der Elemente im Voraus bekannt ist, sind die Standardwerte des Typs ohne die Angabe der Werte die Anfangswerte. Der Standardwert für den Typ int ist Null. Die Syntax für die Erstellung eines solchen Vektors ist:
explizite Vektor (size_type n, const allocator & = allocator ())Das zweite Argument ist optional und kann weggelassen werden. Das erste Argument ist die Größe des Vektors. Wenn der Vektorentyp int ist, sind die Anfangswerte alle Nullen. Das folgende Programm zeigt dies:
#enthaltenDie Ausgabe ist:
0 0 0 0 0Abschluss
Die Größe des Vektors in allen oben genannten Codeproben beträgt 5. Jede andere Zahl kann verwendet werden. Ein Vektor kann auf drei Hauptarten mit allen Nullen initialisiert werden: a) Verwenden Sie die Initializer_List, b) Verwenden Sie die Funktion "zuheiger () Vektorelement zu einem leeren Vektor (oder push_back ()) oder c) verwenden Sie int oder float als Vorlage als Vorlage Parameterspezialisierung für einen Vektor von zunächst nur Standardwerten.