头文件
<algorithm>
使用
#include <iostream>
//#include <vector>
#include <algorithm>
using namespace std;
struct student {
int sno;
string name;
};
//此处值得注意的是:如果要将形参定义为引用类型,则必须先定义为不可变变量
bool cmp(const student& s1, const student& s2) { //自定义比较函数,适用于复杂的比较
return s1.sno < s2.sno; //此处的比较符决定最终的排序顺序
}
int main() {
//vector<int> arr(6);
student arrs[4] = {{12, "小明"}, {11, "小桃"}, {10, "小芳"}, {13, "小王"}};
//for(int i = 0; i < arr.size(); i++) arr[i] = i + 1;
sort(arrs, arrs + 4, cmp);
//sort(arr.begin(), arr.end(), greater<int>()); //vector容器的头迭代器与尾迭代器
for(int i = 0; i < 4; i++)
cout<<"学号:"<<arrs[i].sno<<endl<<"姓名:"<<arrs[i].name<<"\n\n";
//for(int i = 0; i < arr.size(); i++) cout<<arr[i]<<' ';
return 0;
}