在 c++++ stl 中,可以采用以下方法从不同容器中删除元素:从 vector 中删除:使用迭代器或索引。从 list 中删除:使用迭代器。从 set 中删除:使用值为要删除元素的 erase() 方法。从 map 中删除:使用键值为要删除元素的 erase() 方法。
如何从 C++ STL 容器中删除元素
在 C++ 标准模板库 (STL) 中,有几种容器可用于组织数据。这些容器支持各种操作,包括删除元素。本文将介绍从不同类型的 STL 容器中删除元素的各种方法。
从 vector 删除元素
立即学习“C++免费学习笔记(深入)”;
要从向量中删除元素,可以使用以下方法之一:
// 使用迭代器vector 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 lst;lst.push_back(10);lst.push_back(20);lst.erase(lst.begin()); // 删除第一个元素
登录后复制
从 set 删除元素
要从集合中删除元素,可以使用以下方法:
set st;st.insert(10);st.insert(20);st.erase(10); // 删除值为 10 的元素
登录后复制
从 map 删除元素
要从映射中删除元素,可以使用以下方法:
map mp;mp.insert(pair(10, "Hello"));mp.insert(pair(20, "World"));mp.erase(10); // 删除具有 key 为 10 的元素
登录后复制
实战案例:
考虑一个跟踪学术课程学生成绩的应用程序。该应用程序使用 STL 容器来存储学生和他们的成绩。以下示例展示了如何从容器中删除学生和他们的成绩记录:
map student_成績;student_成績.insert(pair("John", 90));student_成績.insert(pair("Mary", 80));// 从映射中删除 John 的记录student_成績.erase("John");
登录后复制
通过上述方法,可以轻松高效地从各种 STL 容器中删除元素。
以上就是如何从C++ STL容器中删除元素?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2562698.html