c++map容器插入和删除
函数原型:
insert(elem); //在容器中插入元素。
clear(); //清除所有元素
erase(pos); //删除pos迭代器所指的元素,返回下一个元素的迭代器。
erase(beg, end); //删除区间[beg,end)的所有元素 ,返回下一个元素的迭代器。
erase(key); //删除容器中值为key的元素。
插入删除和set一样,迭代器类型也和set一样,都是双向迭代器,因此也没有[]和+=的操作,也没有固定位置插入,因为会自动排序,在任何位置插入都是相同的
map<int,int> m1;//插入数据的4种方式
m1.insert(pair<int,int>(1,10));
m1.insert(make_pair(5,50));//好处就是可以省去模板参数,如果参数不对,会自动报错
m1.insert(map<int,int>::value_type(6,60));
m1[7] = 70;//直接输入数值
cout << m1[5] <<endl;
cout << m1[8] <<endl;//中括号有个问题,如果没有这个key的实际数,他会自动的创建一个值为0的实际数
//所以map中[]不建议插入数据,但是可以方便进行访问,如果能够确定key存在,就很方便的进行访问
printmap(m1);
m1.erase(5);//注意,这里删掉的是key的数,不是value的数
printmap(m1);
m1.erase(70);//如果试图删掉value的数,那实际上是没用的
printmap(m1);
0
10 50 60 70 0
10 60 70 0
10 60 70 0
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探