用lambda表达式按照结构体中的一个字段来排序一个结构体数组
Posted 朱英浩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用lambda表达式按照结构体中的一个字段来排序一个结构体数组相关的知识,希望对你有一定的参考价值。
假如结构体如下:
struct item
int a;
string b;
;
代码:
#include <algorithm>
#include <vector>
using namespace std;
// 创建一个结构体数组
vector<item> arr = 3, "c", 1, "a", 2, "b" ;
// 使用lambda表达式来定义比较函数
auto compare = [](item t1, item t2)
return t1.a < t2.a; // 按照a字段升序排序
;
// 调用sort函数来对数组进行排序
sort(arr.begin(), arr.end(), compare);
以上是关于用lambda表达式按照结构体中的一个字段来排序一个结构体数组的主要内容,如果未能解决你的问题,请参考以下文章