Vektor C ++ kopieren

Vektor C ++ kopieren
Vektoren sind sequentielle Container, die Arrays von variabler Größe darstellen. Vektoren verwenden wie Arrays zusammenhängende Speicherplätze für ihre Elemente, was bedeutet, dass sie mit den Bereichen auf gewöhnliche Zeiger auf ihre Elemente auf die gleiche Weise wie Arrays zugegriffen werden können. Im Gegensatz zu Arrays variiert ihre Größe jedoch dynamisch, wobei der Speicher des Containerhandlings automatisch.

In der Situation der Arrays besteht die einzige Möglichkeit, ein Array in einen anderen zu kopieren. Glücklicherweise beinhalten Vektorkurse viele Möglichkeiten, um einen ganzen Vektor auf eine bequemere Weise in einen anderen zu kopieren.

Das Kopieren eines Vektors impliziert, einen neuen Vektor zu erstellen, der eine Kopie aller Komponenten im ursprünglichen Vektor in derselben Reihenfolge hat.

Beispiel 1: std :: methode kopieren, um den vektor in c zu kopieren++

Die STD :: Kopie ist eine integrierte Funktion zum Kopieren von Elementen eines Vektors auf den anderen. Stellen Sie jedoch sicher, dass der Zielvektor über genügend Platz verfügt, um alle Komponenten der ursprünglichen Sequenz zu halten.

Das Programm verfügt über den Header -Abschnitt mit den erforderlichen Dateien. Erstens haben wir die iOstream -Datei; Dann haben wir eine Vektordatei, eine Standard-integrierte Bibliotheksdatei in C++. Über diese Bibliothek können wir Vektoren im Programm verwenden. Als nächstes haben wir eine Algorithmus -Header -Datei zum Kopieren von Elementen von Vektoren. Wir haben auch die Iteratordatei in das Programm aufgenommen, mit der wir auf die Elemente in den Vektoren zugreifen können.

Jetzt haben wir die Hauptfunktion, bei der wir eine Variable als „VEC1“ des Vektorentyps deklariert haben und sie mit dem Ganzzahlarray initialisiert haben. Als nächstes haben wir eine weitere Vektor -Variable als "VEC2" deklariert. Dann rief die Kopienfunktion auf, die alle Elemente von "VEC1" auf "VEC2" kopiert. Die Funktion begin () nimmt den ersten Vektor -Iterator, die Funktion end () übernimmt den letzten Vektor -Iterator, und der Back_insertor hier fügt die Elemente von hinten ein.

Dann haben wir für die Schleifenbedingung, die den Zyklus über jedem im „VEC1“ gespeicherten Element abschließt und die Elemente druckt. Gleiches gilt für „VEC2“ -Elemente; Es wird auch den für den Loop -Zyklus durchlaufen und druckt auf dem Eingabeaufbildungsbildschirm.

#enthalten
#enthalten
#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
Vektor vec1 3, 6, 6, 11;
Vektor VEC2;
Kopie (VEC1.begin (), vec1.End (), Back_inserter (vec2));
Cout << "Elements of Vector1 : ";
für (int v = 0; vCout << vec1[v] << " ";
Cout << endl;
Cout << "Elements of Vector2 : ";
für (int v = 0; vCout << vec2[v] << " ";
Cout<< endl;
Rückkehr 0;

Die Ausgabe des obigen Programms zeigt, dass der Vektor in den anderen Vektor kopiert wurde.

Beispiel2: Zuordnung () Methode zum Kopieren des Vektors in c++

Eine andere Alternative besteht darin, die öffentliche Mitgliedsmethode der Vektorklasse zu ordnen (), die die Vektorelemente durch Elemente aus dem definierten Bereich ersetzt.

Wir haben alle erforderlichen Dateien in den Header -Abschnitt aufgenommen, mit denen wir auf die Vektorelemente zugreifen, das Vektorelement kopieren und auch Vektoren im Programm verwenden können. Darüber hinaus ist die Namespace STD -Datei im Header des Programms enthalten.

Der nächste Schritt ist die Hauptfunktion, in der die Programmimplementierung für die Ausführung durchgeführt wurde. Erstens haben wir eine Vektor -Variable „A“ definiert, die Ganzzahlen in einem Array -Muster speichert. Dann haben wir eine andere Variable, "B" auch vom Vektortyp.

Nachdem wir die Variable definiert haben, haben wir die Methode AIMILE () verwendet, die den Iterator zurückgibt, der auf den ersten und den letzten Vektor „A“ zeigt. Die Zuweisungsmethode kopierte die Vektor -A -Elemente in die Vektor -B -Elemente "B". Jetzt wird mit der für die Loop über die Vektor -A -Elemente iteriert und die Elemente des Vektors „A“ drucken. Die For -Loop wird auch für die Iteration an den Vektor -B -Elementen verwendet und zeigt diese Elemente über den Cout -Befehl an.

#enthalten
#enthalten
#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
Vektor a 3, 5, 7, 9, 11;
Vektor B;
B.zuweisen (a.begin (), a.Ende());
Cout << "Elements of vector : ";
für (int i = 0; iCout << a[i] << " ";
Cout << endl;
Cout << "Elements of new vector : ";
für (int i = 0; iCout << b[i] << " ";
Cout<< endl;
Rückkehr 0;

Der Vektor wird in den anderen Vektor kopiert. Daher können wir auch die Zuweisungsfunktion in C ++ verwenden, um Vektorelemente auf die anderen Elemente des Vektors zu kopieren.

Beispiel 3: Zuordnungsbetreibermethode zum Kopieren des Vektors in c++

Ein Vektor kann auch in einen anderen Vektor mit dem Zuordnungsbetreiber kopiert werden. Der Grund, warum ein solcher Zuordnungsbetreiber funktioniert.

Der erste Schritt enthielt wesentliche Dateien in den Abschnitt Header, der für dieses Programm erforderlich ist. Außerdem haben wir eine Namespace STD -Datei, um ihre Funktion im Programm zu verwenden. Dann haben wir die Hauptfunktion, in der wir zwei Variablen deklariert haben, "Vector1" und "Vector2" des Vektortyps. Nur "Vector1" wird mit dem Ganzzahlarray initialisiert.

Jetzt haben wir einen Zuordnungsbetreiber (=), der die Elemente "Vector1" in die Elemente "Vector2" kopiert, indem sie einfach den "=" -Operator zwischen "vector1" und "vector2" platzieren, der einfach den "=" -Operator platziert. Die For -Loop wird für die Iteration über beide angegebenen Vektoren verwendet und druckt die in den angegebenen Vektoren vorhandenen Elemente über das Cout -Objekt aus.

#enthalten
#enthalten
#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
Vektor Vector1 0, 2, 4, 6, 8;
Vektor Vektor2;
vector2 = vector1;
Cout << "vector1 elements : ";
für (int i = 0; iCout << vector1[i] << " ";
Cout << endl;
Cout << "vector2 elements : ";
für (int i = 0; iCout << vector2[i] << " ";
Cout<< endl;
Rückkehr 0;

Die Vector1 -Elemente werden in die Vector2 -Elemente kopiert, wie im folgenden Eingabeaufbildungsbildschirm gezeigt.

Beispiel 4: Konstruktormethode zum Kopieren des Vektors in c++

Wenn ein Vektor deklariert wird, kopiert die Übergabe eines vorhandenen initialisierten Vektors die Elemente des gegebenen Vektors in den neu deklarierten Vektor. Wir müssen den Zielvektor als Konstruktor einen Quellvektor zur Verfügung stellen, der dann als Kopierkonstruktor bezeichnet wird.

Beginnend mit dem Header-Abschnitt verfügen wir über einige integrierte standardmäßige integrierte Bibliotheksdateien von C ++, die für dieses Programm benötigt werden. Die Hauptfunktion wird dann aufgerufen, wo wir eine Vektor -Variable als „P“ deklariert haben. Die Variable „P“ enthält das Array von Ganzzahlen. Dann einen neuen Vektor als „P“ deklarieren und ein Element aus einem vorhandenen Vektor „P“ in der Konstruktor -Methode übergeben.

Durch die Konstruktor -Methode werden die Vektor -P -Elemente in den Vektor „Q“ kopiert. Die für die Schleife wird sowohl für die Vektoren "P" als auch für "Q" verwendet und wird auf dem schnellen Bildschirm von Ubuntu gedruckt.

#enthalten
#enthalten
#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
Vektor P 1996, 1997, 1998, 1999;
Vektor Q (p);
Cout << "Elements of old vector : ";
für (int i = 0; iCout << p[i] << " ";
Cout << endl;
Cout << "Elements of new vector: ";
für (int i = 0; iCout << q[i] << " ";
Cout<< endl;
Rückkehr 0;

Daher werden die Elemente vom alten Vektor „P“ zum neuen Vektor „Q“ auf dem folgenden Bildschirm kopiert.

Abschluss

Wir haben viele Methoden zum Kopieren eines Vektors in einen neuen Vektor gelernt. Wir haben vier verschiedene Ansätze zum Kopieren von Vektoren in C verwendet++. Diese Ansätze enthielten die STD :: Kopiermethode, die Methode zuweisen, Zuordnungsoperatormethode und einen bestehenden Quellvektor als Konstruktor. Mit den nachgewiesenen Ergebnissen dieser im Programm verwendeten Methoden haben wir die Elemente der vorhandenen Vektorelemente in den neu geformten Vektor in der C ++ - Programmiersprache kopiert.