#include<iostream>
using namespace std;
#include<set>
class person {
public:
person(string name,int age) {
this->m_name = name;
this->m_age = age;
}
string m_name;
int m_age;
};
class comparePerson {
public:
bool operator()(const person& p1, const person& p2)const {
//按照年龄 降序
return p1.m_age > p2.m_age;
}
};
void test01() {
set<person, comparePerson>s;
//创建person对象
person p2("周瑜", 27);
person p1("孙策", 28);
person p4("陆逊", 20);
person p3("孙权", 22);
s.insert(p1);
s.insert(p2);
s.insert(p3);
s.insert(p4);
for (set<person, comparePerson>::iterator it = s.begin(); it != s.end(); it++) {
cout << "姓名: " << it->m_name << " 年龄: " << it->m_age << endl;
}
}
int main() {
test01();
}
c++笔记 STL set容器_自定义数据类型指定排序规则
最新推荐文章于 2022-08-17 07:30:00 发布