构造简单的二级排序比较器

来源:互联网 发布:开票软件金税盘版官网 编辑:程序博客网 时间:2024/05/29 18:19

初学,请看代码


#include <iostream>#include <string>#include <algorithm>#include <sstream>using namespace std;class Student {public:int grade;string name;};//构造二级排序比较器bool lessCmp(Student &a, Student &b){if (a.grade < b.grade){return true;}else if (a.grade == b.grade) {if (a.name < b.name)return true;elsereturn false;}return false;}int main(){const int n = 50;Student *stu=new Student[n];//初始化,让id相同时name存在不同的情况for (int i = 0; i < n; i++){stringstream iss;string temp;iss << i / 10;iss >> temp;cout << temp << endl;stu[i].grade = i % 7;stu[i].name = temp;}//排序sort(stu, stu + n, lessCmp);//输出for (int i = 0; i < n; i++){cout << "id=" << stu[i].grade << "    name=" << stu[i].name << endl;}return 0;}


原创粉丝点击