Maison >développement back-end >C++ >Comment supprimer des éléments du conteneur C++ STL ?

Comment supprimer des éléments du conteneur C++ STL ?

WBOY
WBOYoriginal
2024-06-02 11:29:57275parcourir

En C++ STL, vous pouvez supprimer des éléments de différents conteneurs des manières suivantes : Supprimer du vecteur : utilisez un itérateur ou un index. Supprimer de la liste : utilisez l'itérateur. Pour supprimer d'un ensemble : Utilisez la méthode Eraser() dont la valeur est l'élément à supprimer. Supprimer de la carte : utilisez la méthode Eraser() avec la valeur clé de l'élément à supprimer.

如何从C++ STL容器中删除元素?

Comment supprimer des éléments des conteneurs STL C++

Dans la bibliothèque de modèles standard C++ (STL), plusieurs conteneurs sont disponibles pour organiser les données. Ces conteneurs prennent en charge diverses opérations, notamment la suppression d'éléments. Cet article décrira diverses méthodes de suppression d'éléments de différents types de conteneurs STL.

Supprimer un élément d'un vecteur

Pour supprimer un élément d'un vecteur, vous pouvez utiliser l'une des méthodes suivantes :

// 使用迭代器
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]

Supprimer un élément d'une liste

Pour supprimer un élément d'une liste, vous pouvez utiliser les méthodes suivantes :

list<int> lst;
lst.push_back(10);
lst.push_back(20);
lst.erase(lst.begin()); // 删除第一个元素

Supprimer des éléments de l'ensemble

Pour supprimer des éléments de l'ensemble, vous pouvez utiliser la méthode suivante :

set<int> st;
st.insert(10);
st.insert(20);
st.erase(10); // 删除值为 10 的元素

Supprimer des éléments de la carte

Pour supprimer des éléments de la carte, vous pouvez utilisez les méthodes suivantes :

map<int, string> mp;
mp.insert(pair<int, string>(10, "Hello"));
mp.insert(pair<int, string>(20, "World"));
mp.erase(10); // 删除具有 key 为 10 的元素

Cas pratique :

Envisagez une application qui suit les performances des étudiants dans les cours académiques. L'application utilise des conteneurs STL pour stocker les étudiants et leurs notes. L'exemple suivant montre comment supprimer des étudiants et leurs relevés de notes d'un conteneur :

map<string, int> student_成績;
student_成績.insert(pair<string, int>("John", 90));
student_成績.insert(pair<string, int>("Mary", 80));

// 从映射中删除 John 的记录
student_成績.erase("John");

Avec la méthode ci-dessus, les éléments peuvent être supprimés de divers conteneurs STL facilement et efficacement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn