// map容器 void test01() { map<int, string> m; // map的几种初始化操作 m.insert(make_pair(5, "hhh")); m.insert(pair<int, string>(3, "lll")); m.emplace(4, "ggg"); m[1] = "abc"; //默认排序输出 for (map<int, string>::iterator it = m.begin(); it != m.end();...
// 自定义数据类型排序class Hero{public:// 构造方法Hero(string name, int age) :name(name), age(age) {}// 属性string name;int age;};class Cmp_hero{public:bool operator()(const Hero& h1, const Hero& h2)const {return h1.age < h2.age;}};void test06(){map<Hero, int, Cmp_hero>...
我们知道map默认以key值从小到大排序,如下: #include<iostream>#include<map>usingnamespacestd;structStu{intage;intheight;};classSys{public:voidadd(Stuconst&s){id++;students.emplace(make_pair(id,s));}voidshow(){for(autos:students){cout<<"id:"<<s.first<<", age:"<<s.second.age<<", heig...