Einführung
In diesem Lab werden wir die erase()
-Methode im C++ STL Map-Container kennenlernen, um eine Reihe von Elementen in einer Map in der Programmiersprache C++ zu löschen.
💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken
In diesem Lab werden wir die erase()
-Methode im C++ STL Map-Container kennenlernen, um eine Reihe von Elementen in einer Map in der Programmiersprache C++ zu löschen.
Erstellen Sie in das Verzeichnis ~/project
eine neue C++-Datei namens main.cpp
mit dem Befehl touch ~/project/main.cpp
und öffnen Sie sie mit Ihrem bevorzugten Texteditor.
In diesem Schritt werden wir eine Map erstellen und sie mit Schlüssel-Wert-Paaren von ganzen Zahlen mit der insert()
-Methode befüllen. Die make_pair()
-Funktion wird verwendet, um ein Schlüssel-Wert-Paar in die Map einzufügen. Die Schlüssel werden automatisch in aufsteigender Reihenfolge der Schlüssel sortiert.
#include <iostream>
#include <map>
using namespace std;
int main()
{
cout << "\n\nWelcome to LabEx :-)\n\n\n";
cout << " ===== Program to demonstrate the working of erase() method in a Map (Part 2), in CPP ===== \n\n\n";
map<int, int> m;
m.insert(make_pair(3, 30));
m.insert(make_pair(2, 20));
m.insert(make_pair(5, 50));
m.insert(make_pair(9, 90));
m.insert(make_pair(1, 10));
}
In diesem Schritt werden wir Elemente in der Map mit Schlüsseln kleiner als ein bestimmter Wert mit der erase()
-Methode entfernen. In diesem Beispiel entfernen wir alle Elemente mit Schlüsseln kleiner als 3. erase(m.begin(), m.find(3))
entfernt alle Elemente vom Anfang der Map bis zur Position des Iterators, der auf das Element mit dem Schlüssel 3 zeigt.
#include <iostream>
#include <map>
using namespace std;
int main()
{
cout << "\n\nWelcome to LabEx :-)\n\n\n";
cout << " ===== Program to demonstrate the working of erase() method in a Map (Part 2), in CPP ===== \n\n\n";
map<int, int> m;
m.insert(make_pair(3, 30));
m.insert(make_pair(2, 20));
m.insert(make_pair(5, 50));
m.insert(make_pair(9, 90));
m.insert(make_pair(1, 10));
cout << "Map elements before deletion: " << endl;
for (auto i : m)
{
cout << "( " << i.first << ", " << i.second << " ) ";
}
m.erase(m.begin(), m.find(3));
cout << "\n\nMap elements after deletion: " << endl;
for (auto i : m)
{
cout << "( " << i.first << ", " << i.second << " ) ";
}
cout << "\n\n\n";
return 0;
}
Um den obigen C++-Code auszuführen, müssen wir ihn in der Konsole mit den folgenden Befehlen kompilieren und ausführen:
g++ ~/project/main.cpp -o ~/project/main && ~/project/./main
Nachdem der obige Code erfolgreich kompiliert und ausgeführt wurde, wird die Ausgabe wie folgt sein:
Welcome to LabEx :-)
===== Program to demonstrate the working of erase() method in a Map (Part 2), in CPP =====
Map elements before deletion:
( 1, 10 ) ( 2, 20 ) ( 3, 30 ) ( 5, 50 ) ( 9, 90 )
Map elements after deletion:
( 3, 30 ) ( 5, 50 ) ( 9, 90 )
In diesem Lab haben wir uns mit der erase()
-Methode im C++ STL Map-Container beschäftigt, um eine Reihe von Elementen in einer Map in der Programmiersprache C++ zu löschen. Wir haben auch gelernt, wie man eine Map erstellt und sie mit Schlüssel-Wert-Paaren mit der insert()
-Methode befüllt. Schließlich haben wir gesehen, wie man Elemente aus einer Map mit erase()
löscht.