#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
struct s{
int data;
char b;
};
bool comp(const s &s1, const s &s2 ){
return s1.data < s2.data;
}
int main()
{
vector<s> v1;
s s1, s2, s3, s4, s5;
s1 = {2, 'b'};
s2 = {5, 'e'};
s3 = {1, 'a'};
s4 = {3, 'c'};
s5 = {4, 'd'};
v1.push_back(s1);
v1.push_back(s2);
v1.push_back(s3);
v1.push_back(s4);
v1.push_back(s5);
cout << "sort after:" << endl;
for(auto iter = v1.begin(); iter != v1.end(); iter++){
cout << iter->b << endl;
}
sort(v1.begin(),v1.end(),comp);
cout << "sort after:" << endl;
for(auto iter = v1.begin(); iter != v1.end(); iter++){
cout << iter->b << endl;
}
C++结构体类型的vector如何按照结构体的一个索引值大小排序?
最新推荐文章于 2021-10-15 09:31:21 发布
本文介绍了如何在C++中使用STL的sort函数,针对vector包含结构体类型的容器,根据结构体内的某个索引值进行排序。通过编写比较函数并确保(如为成员函数)其静态属性,可以正确实现从小到大的排序操作。
摘要由CSDN通过智能技术生成