map 小模板~~~ 写的不好 继续添加
#include<map>
#include<string.h>
#include<iostream>
using namespace std;
int main()
{
??? ///map插入
??? map<string,int> mp;?? ///<key值 val值>
??? mp["a"]=1;
??? mp["b"]=2;
??? mp["c"]=3;
??? map<string,int>::iterator it;
??? for(it=mp.begin(); it!=mp.end(); ++it)
??????? cout<<"key: "<<it->first <<" value: "<<it->second<<endl;
??? return?? 0;
??? ///mapde大小
??? int len=mp.size();
??? ///數(shù)據(jù)清空與判空
??? mp.clear();
??? mp.empty();?? ///if空了 返回true???? else return false
??? ///map的刪除 erase函數(shù)
??? for (iter = mm.begin(); iter != mm.end();) ///如果沒有else部分 iter刪除后之后的for循環(huán)里就會亂了
??? {
??????? if ( iter->second == something )
??????????? mm.erase( iter++ );
??????? else
??????????? iter++;?? // Use Pre Increment for efficiency.
??? }
??? ///等同于
??? for (iter = mm.begin(); iter != mm.end();)
??? {
??????? if ( iter->second == something )
??????? {
??????????? map<string, string>::iterator iter_erase;
??????????? iter_erase = iter++ //先保存后++再刪除
??????????? mm.erase( iter_erase );
??????? }
??????? else
??????????? iter++;?? // Use Pre Increment for efficiency.
??? }
?? ?
??? ///map排序
?
??? map<int,Student> stu_map;///升序排列
??? ///如果要降序? 則
??? map<int,Student> stu_map;改為
??? map<int,Student, greater<int> > stu_map;
??? ///以及
??? map<int,Student>::iterator iter;改為
??? map<int,Student, greater<int> >::iteratoriter;
??? 即可。
??? 其實,map<int,Student> stu_map;這是一種缺省的情況,它和
??? map<int,Student, less<int> > stu_map;是一樣的。
}
轉(zhuǎn)載于:https://www.cnblogs.com/zhangying/p/3901345.html
總結(jié)
以上是生活随笔為你收集整理的map 小模板~~~ 写的不好 继续添加的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个我想起一个微信网名
- 下一篇: 甩渣 自带价