Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

Vektor in C++ Standard Template Library (STL) mit Beispiel

Was ist ein C++-Vektor?

Ein C++-Vektor ist ein dynamisches Array, das in der Lage ist, seine Größe automatisch zu ändern. Die Größenänderung erfolgt, nachdem ein Element zum Vektor hinzugefügt oder daraus gelöscht wurde. Die Lagerung erfolgt automatisch durch den Container. Die Elemente eines Vektors werden in einem zusammenhängenden Speicher gespeichert. Dies ermöglicht C++-Programmierern den Zugriff auf die Vektorelemente und deren Traversierung mithilfe von Iteratoren.

Das Einfügen neuer Daten in einen Vektor erfolgt an dessen Ende. Dies dauert eine Differenzzeit. Das Entfernen eines Elements aus einem Vektor dauert konstant. Der Grund dafür ist, dass die Größe des Vektors nicht geändert werden muss. Das Einfügen oder Löschen eines Elements am Anfang des Vektors dauert linear.

In diesem C++ Tutorial lernen Sie:

Wann verwendet man einen Vektor?

Unter folgenden Umständen sollte ein C++-Vektor verwendet werden:

So initialisieren Sie Vektoren in C++

Die Syntax von Vektoren in C++ ist:

vector <data-type> name (items)

Iteratoren

Der Zweck von Iteratoren besteht darin, uns beim Zugriff auf die in einem Vektor gespeicherten Elemente zu helfen. Es ist ein Objekt, das wie ein Zeiger funktioniert. Hier sind die allgemeinen Iteratoren, die von C++-Vektoren unterstützt werden:

Modifikatoren

Modifikatoren werden verwendet, um die Bedeutung des angegebenen Datentyps zu ändern. Hier sind die üblichen Modifikatoren in C++:

Beispiel 1

#include <iostream> 
#include <vector> 

using namespace std;
int main()
{
	vector<int> nums;

	for (int a = 1; a <= 5; a++)

		nums.push_back(a);

	cout << "Output from begin and end: ";

	for (auto a = nums.begin(); a != nums.end(); ++a)

		cout << *a << " ";

	cout << "\nOutput from cbegin and cend: ";

	for (auto a = nums.cbegin(); a != nums.cend(); ++a)

		cout << *a << " ";

	return 0;
}

Ausgabe:

Hier ist ein Screenshot des Codes:

Code-Erklärung:

  1. Fügen Sie die iostream-Header-Datei in unseren Code ein. Es wird uns erlauben, von der Konsole zu lesen und in sie zu schreiben.
  2. Fügen Sie die Vektor-Header-Datei in unseren Code ein. Es wird uns erlauben, mit Vektoren in C++ zu arbeiten.
  3. Schließen Sie den std-Namensraum ein, um seine Klassen und Funktionen zu verwenden, ohne ihn aufzurufen.
  4. Rufen Sie die Funktion main() auf, in der die Logik des Programms hinzugefügt werden soll.
  5. Das { markiert den Beginn des Hauptteils der main()-Funktion.
  6. Deklarieren Sie einen Vektor namens nums, um eine Menge von ganzen Zahlen zu speichern.
  7. Erstellen Sie eine for-Schleife, um uns bei der Iteration über den Vektor zu helfen. Die Variable hilft uns dabei, die Vektorelemente von 1 st zu iterieren bis 5. Elemente.
  8. Elemente von hinten in den Vektor num schieben. Bei jeder Iteration fügt dies den aktuellen Wert der Variablen a in den Vektor ein, der 1 bis 5 ist.
  9. Text auf der Konsole ausgeben
  10. Verwenden Sie eine Iterator-Variable a, um die Elemente von vector nums vom Anfang bis zum letzten Element zu durchlaufen. Beachten Sie, dass wir die Iteratoren vector::begin() und vector::end() verwenden.
  11. Die Werte, auf die die Iteratorvariable zeigt, für jede Iteration auf der Konsole ausgeben.
  12. Drucken Sie etwas Text auf der Konsole. Das \n ist ein Zeilenumbruchzeichen, das den Cursor auf die neue Zeile bewegt, um von dort aus zu drucken.
  13. Verwenden Sie eine Iterator-Variable, um die Elemente von vector nums vom Anfang bis zum letzten Element zu durchlaufen. Beachten Sie, dass wir die Iteratoren vector::cbegin() und vector::cend() verwenden.
  14. Drucken Sie die Werte, auf die die Iterator-Variable a zeigt, auf der Konsole für jede Iteration.
  15. Die Hauptfunktion sollte einen Wert zurückgeben, wenn das Programm erfolgreich ausgeführt wird.
  16. Ende des Hauptteils der main()-Funktion.

Beispiel 2

#include <iostream>
#include <vector> 

using namespace std;
int main()
{
	vector<int> nums;
	
	nums.assign(5, 1);

	cout << "Vector contents: ";
	for (int a = 0; a < nums.size(); a++)
		cout << nums[a] << " ";

	nums.push_back(2);
	int n = nums.size();
	cout << "\nLast element: " << nums[n - 1];

	nums.pop_back();

	cout << "\nVector contents: ";
	for (int a = 0; a < nums.size(); a++)
		cout << nums[a] << " ";

	nums.insert(nums.begin(), 7);

	cout << "\nFirst element: " << nums[0];
	
	nums.clear();
	cout << "\nSize after clear(): " << nums.size();			
}

Ausgabe:

Hier ist ein Screenshot des Codes:

Code-Erklärung:

  1. Fügen Sie die iostream-Header-Datei in unseren Code ein, um ihre Funktionen zu nutzen.
  2. Fügen Sie die Vektor-Header-Datei in unseren Code ein, um ihre Funktionen zu nutzen.
  3. Schließen Sie den std-Namespace ein, um seine Klassen zu verwenden, ohne ihn aufzurufen.
  4. Rufen Sie die Funktion main() auf. Die Programmlogik sollte in seinen Körper eingefügt werden.
  5. Der Anfang des Hauptteils der main()-Funktion.
  6. Deklarieren Sie einen Vektor namens nums, um einige Integer-Werte zu speichern.
  7. Speichere 5 Elemente im Vektor nums. Jeweils mit einem Wert von 1.
  8. Text auf der Konsole ausgeben
  9. Verwenden Sie eine Iteratorvariable a, um über die Elemente von Vektorzahlen zu iterieren.
  10. Gib die Werte von Vektorzahlen für jede Iteration auf der Konsole aus.
  11. Hinzufügen Sie den Wert 2 an das Ende der Vektorzahlen.
  12. Deklarieren Sie eine Integer-Variable n, um die Größe des Vektors nums zu speichern.
  13. Den letzten Wert von Vektorzahlen neben anderem Text drucken. Es sollte eine 2 zurückgeben.
  14. Entferne das letzte Element aus den Vektorzahlen. Die 2 wird entfernt.
  15. Text auf der Konsole drucken. Das \n bewegt den Cursor in die neue Zeile, um den Text dort zu drucken.
  16. Verwenden Sie eine Iteratorvariable a, um über die Elemente von Vektorzahlen zu iterieren.
  17. Gib die Werte von Vektorzahlen für jede Iteration auf der Konsole aus.
  18. Fügen Sie den Wert 7 am Anfang der Vektorzahlen ein.
  19. Den ersten Wert von Vektorzahlen neben anderem Text drucken. Es sollte 7 zurückgeben.
  20. Lösche alle Elemente aus den Vektorzahlen.
  21. Drucken Sie die Größe der Vektornummer zusammen mit anderem Text, nachdem Sie alle Inhalte gelöscht haben. Es sollte 0 zurückgeben.
  22. Ende des Hauptteils der main()-Funktion.

Kapazität

Verwenden Sie die folgenden Funktionen, um die Kapazität eines Vektors zu bestimmen:

Beispiel 3

#include <iostream> 
#include <vector> 
using namespace std;
int main() {
	vector<int> vector1;
	for (int x = 1; x <= 10; x++)
		vector1.push_back(x);
	cout << "Vector size: " << vector1.size()<< endl;
	cout << "Vector capacity: " << vector1.capacity() << endl;
	cout << "Maximum size of vector: " << vector1.max_size()<< endl;
	vector1.resize(5);
	cout << "Vector size after resizing: " << vector1.size() << endl;
	if (vector1.empty() == false)
		cout << "Vector is not empty"<<endl;
	else
		cout << "Vector is empty"<<endl;
	return 0;
}

Ausgabe:

Hier ist ein Screenshot des Codes:

Code-Erklärung:

  1. Fügen Sie die iostream-Header-Datei in unseren Code ein, um ihre Funktion zu verwenden.
  2. Fügen Sie die Vektor-Header-Datei in unseren Code ein, um ihre Funktionen zu nutzen.
  3. Fügen Sie den std-Namespace in unseren Code ein, um seine Klassen zu verwenden, ohne ihn aufzurufen.
  4. Rufen Sie die Funktion main() auf. Die Programmlogik sollte innerhalb des Hauptteils dieser Funktion hinzugefügt werden.
  5. Erstellen Sie einen Vektor namens Vektor1, um ganze Zahlen zu speichern.
  6. Verwenden Sie eine for-Schleife, um die Variable x mit Werten von 1 bis 10 zu erstellen.
  7. Push die Werte der Variablen x in den Vektor.
  8. Drucken Sie die Größe des Vektors zusammen mit anderem Text auf der Konsole.
  9. Drucken Sie die Kapazität des Vektors zusammen mit anderem Text auf der Konsole.
  10. Drucken Sie die maximale Anzahl von Elementen, die der Vektor zusammen mit anderem Text auf der Konsole enthalten kann.
  11. Ändern Sie die Größe des Vektors so, dass er nur 5 Elemente enthält.
  12. Drucken Sie die neue Größe des Vektors neben anderem Text.
  13. Überprüfen Sie, ob der Vektor nicht leer ist.
  14. Text auf der Konsole ausgeben, wenn der Vektor nicht leer ist.
  15. Verwenden Sie eine else-Anweisung, um anzugeben, was zu tun ist, wenn der Vektor leer ist.
  16. Text, der auf der Konsole gedruckt werden soll, wenn der Vektor leer ist.
  17. Das Programm muss nach erfolgreichem Abschluss einen Wert zurückgeben.
  18. Ende des Hauptteils der main()-Funktion.

Zusammenfassung:


C Sprache

  1. C-Standardbibliotheksfunktionen
  2. Operatoren in C++ mit Beispiel:Was ist, Typen und Programme
  3. C++ do…while-Schleife mit Beispielen
  4. C++ Switch Case-Anweisung mit BEISPIEL
  5. C++ Dynamische Zuordnung von Arrays mit Beispiel
  6. C++-Zeiger mit Beispielen
  7. Überladen von C++-Operatoren mit Beispielen
  8. std::list in C++ mit Beispiel
  9. C++ Funktionen mit Programmbeispielen
  10. Unterschied zwischen Struktur und Klasse:Erklärt mit C++-Beispiel