C++ STL地图容器:删除元素详解

需积分: 0 1 下载量 111 浏览量 更新于2024-07-14 收藏 16.98MB PPT 举报
"这篇学习笔记主要讨论了C++ STL中的map容器,特别是关于如何删除元素的方法。文中提到了`erase()`函数的三种用法,包括通过迭代器删除单个元素或范围,以及通过关键字删除元素。同时,还介绍了`clear()`函数用于清空整个map。此外,文件还提及了C++学习的相关背景,包括C++的起源、发展历程和在不同领域的应用。" 在C++ STL中,map是一个关联容器,它存储键值对,提供一对一的映射关系。要从map中删除元素,可以使用`erase()`函数。这个函数有以下几种形式: 1. `iterator erase(iterator it)`:通过一个迭代器指向的元素来删除它。这将返回下一个元素的迭代器,如果删除的是最后一个元素,则返回end()。 2. `iterator erase(iterator first, iterator last)`:删除由first和last指定的迭代器范围内的所有元素。这将使last之前的元素被删除,返回值为last。 3. `size_type erase(const Key& key)`:通过提供键值来删除匹配的所有元素。返回删除的元素数量。 例如,在示例代码中,`StuInfo.erase(1)`会删除键为1的条目,而`StuInfo.erase(StuInfo.begin())`则删除map的第一个条目。清空整个map可以使用`clear()`函数,它的效果等同于`StuInfo.erase(StuInfo.begin(), StuInfo.end())`。 此外,文件还简单介绍了C++的背景。C++是由比雅尼·斯特劳斯特鲁普博士在1979年开发的,最初称为"C with Class",后演变成C++。1998年,C++成为ANSI/ISO标准。C++是一种多范式语言,支持过程化编程、面向对象编程和泛型编程,广泛应用于系统编程、游戏开发、网络编程和嵌入式系统等领域。 在学习C++的过程中,学生可以参考多种教材,如《The C++ Programming Language》、《C++ Primer》和《C++大学教程》等。课程通常包括理论和实践两部分,作业涉及选择题、填空题和编程题,提交方式多在线进行,例如通过moodle平台。随着C++的发展,它经历了三个主要阶段,分别代表了面向对象编程、泛型编程(如STL和Boost库)以及模板元编程的引入和应用。C++在行业中的地位稳定,尤其在特定领域如游戏开发中占有重要位置。