Heim > Artikel > Backend-Entwicklung > Wie entferne ich Elemente aus dem C++-STL-Container?
In C++ STL können Sie die folgenden Methoden verwenden, um Elemente aus verschiedenen Containern zu entfernen: Aus Vektor entfernen: Iterator oder Index verwenden. Aus Liste entfernen: Iterator verwenden. So entfernen Sie es aus einer Menge: Verwenden Sie die Methode erase(), deren Wert das zu entfernende Element ist. Aus der Karte löschen: Verwenden Sie die Methode erase() mit dem Schlüsselwert des zu löschenden Elements.
So entfernen Sie Elemente aus C++-STL-Containern
In der C++-Standardvorlagenbibliothek (STL) stehen mehrere Container zum Organisieren von Daten zur Verfügung. Diese Container unterstützen verschiedene Vorgänge, einschließlich des Löschens von Elementen. In diesem Artikel werden verschiedene Methoden zum Entfernen von Elementen aus verschiedenen Arten von STL-Containern beschrieben.
Ein Element aus einem Vektor entfernen
Um ein Element aus einem Vektor zu entfernen, können Sie eine der folgenden Methoden verwenden:
// 使用迭代器 vector<int> vec; vec.push_back(10); vec.push_back(20); vec.erase(vec.begin() + 1); // 删除 vec[1] // 使用索引 vec.erase(vec.begin(), vec.begin() + 1); // 删除 vec[0]
Ein Element aus einer Liste entfernen
Um ein Element aus einer Liste zu entfernen, Sie können die folgenden Methoden verwenden:
list<int> lst; lst.push_back(10); lst.push_back(20); lst.erase(lst.begin()); // 删除第一个元素
Elemente aus der Menge löschen
Um Elemente aus der Menge zu löschen, können Sie die folgende Methode verwenden:
set<int> st; st.insert(10); st.insert(20); st.erase(10); // 删除值为 10 的元素
Elemente aus der Karte entfernen
Um Elemente aus der Karte zu löschen, können Sie Verwenden Sie die folgenden Methoden:
map<int, string> mp; mp.insert(pair<int, string>(10, "Hello")); mp.insert(pair<int, string>(20, "World")); mp.erase(10); // 删除具有 key 为 10 的元素
Praktischer Fall:
Stellen Sie sich eine App vor, die die Leistung von Studierenden in akademischen Kursen verfolgt. Die Anwendung verwendet STL-Container zum Speichern von Schülern und ihren Noten. Das folgende Beispiel zeigt, wie man Schüler und ihre Notendatensätze aus einem Container löscht:
map<string, int> student_成績; student_成績.insert(pair<string, int>("John", 90)); student_成績.insert(pair<string, int>("Mary", 80)); // 从映射中删除 John 的记录 student_成績.erase("John");
Mit der oben genannten Methode können Elemente aus verschiedenen STL-Containern einfach und effizient gelöscht werden.
Das obige ist der detaillierte Inhalt vonWie entferne ich Elemente aus dem C++-STL-Container?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!