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

在 c++++ stl 中,可以采用以下方法从不同容器中删除元素:从 vector 中删除:使用迭代器或索引。从 list 中删除:使用迭代器。从 set 中删除:使用值为要删除元素的 erase() 方法。从 map 中删除:使用键值为要

在 c++++ stl 中,可以采用以下方法从不同容器中删除元素:从 vector 中删除:使用迭代器或索引。从 list 中删除:使用迭代器。从 set 中删除:使用值为要删除元素的 erase() 方法。从 map 中删除:使用键值为要删除元素的 erase() 方法。

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

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

在 C++ 标准模板库 (STL) 中,有几种容器可用于组织数据。这些容器支持各种操作,包括删除元素。本文将介绍从不同类型的 STL 容器中删除元素的各种方法。

从 vector 删除元素

要从向量中删除元素,可以使用以下方法之一:

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

登录后复制

从 list 删除元素

要从列表中删除元素,可以使用以下方法:

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

登录后复制

从 set 删除元素

要从集合中删除元素,可以使用以下方法:

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

登录后复制

从 map 删除元素

要从映射中删除元素,可以使用以下方法:

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

登录后复制

实战案例:

考虑一个跟踪学术课程学生成绩的应用程序。该应用程序使用 STL 容器来存储学生和他们的成绩。以下示例展示了如何从容器中删除学生和他们的成绩记录:

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

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

登录后复制

通过上述方法,可以轻松高效地从各种 STL 容器中删除元素。

以上就是如何从C++ STL容器中删除元素?的详细内容,更多请关注叮当号网其它相关文章!

文章来自互联网,只做分享使用。发布者:城南北边,转转请注明出处:https://www.dingdanghao.com/article/556572.html

(0)
上一篇 2024-05-31 16:40
下一篇 2024-05-31 17:20

相关推荐

联系我们

在线咨询: QQ交谈

邮件:442814395@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信公众号