按照特定成员对向量进行排序 C++
创始人
2024-08-25 12:00:46
0

在C++中,我们可以使用std::sort()函数来对向量进行排序。为了按照特定成员对向量进行排序,我们可以自定义一个比较函数,并将其作为std::sort()函数的第三个参数传递。

以下是一个示例代码,演示了如何按照特定成员age对一个自定义的结构体Person的向量进行排序:

#include 
#include 
#include 

struct Person {
    std::string name;
    int age;
};

// 自定义比较函数,按照age成员进行升序排序
bool compareByAge(const Person& a, const Person& b) {
    return a.age < b.age;
}

int main() {
    std::vector people = {{"Alice", 25}, {"Bob", 20}, {"Charlie", 30}};

    // 使用自定义的比较函数对向量进行排序
    std::sort(people.begin(), people.end(), compareByAge);

    // 输出排序后的结果
    for (const auto& person : people) {
        std::cout << person.name << " " << person.age << std::endl;
    }

    return 0;
}

运行上述代码将输出:

Bob 20
Alice 25
Charlie 30

在这个示例中,我们定义了一个名为compareByAge的自定义比较函数,它接受两个Person对象作为参数,并根据它们的age成员进行比较。然后,我们使用std::sort()函数对people向量进行排序,将compareByAge函数作为第三个参数传递。最后,我们遍历排序后的向量,并输出每个人的姓名和年龄。

请注意,这只是按照age成员进行升序排序的示例。如果您想按照其他成员或以不同的排序顺序进行排序,只需编写相应的比较函数即可。

相关内容

热门资讯

五分钟辅助!哈糖大菠萝助手,h... 五分钟辅助!哈糖大菠萝助手,hhpoker软件安装包,教材教程(发现有挂)1、上手简单,内置详细流程...
第3分钟辅助!拱趴大菠萝作弊方... 第3分钟辅助!拱趴大菠萝作弊方法,xpoker辅助怎么用,手册教程(有挂透明挂)一、拱趴大菠萝作弊方...
两分钟辅助!poker辅助器免... 两分钟辅助!poker辅助器免费安装,hhpoker有没有外挂,大纲教程(有挂助手)1、很好的工具软...
第三分钟辅助!wpk透视怎么安... 第三分钟辅助!wpk透视怎么安装,hhpoker透视脚本视频,演示教程(有挂技巧)暗藏猫腻,小编详细...
第4分钟辅助!菠萝德普辅助器免... 第4分钟辅助!菠萝德普辅助器免费版在哪里,wepoker免费透视,教材教程(真实有挂)1、让任何用户...
五分钟辅助!德州透视hhpok... 五分钟辅助!德州透视hhpoker,wepoker透视器免费,绝活儿教程(揭秘有挂)1、wepoke...
第八分钟辅助!aa poker... 第八分钟辅助!aa poker辅助包,hhpoker脚本,模块教程(果真有挂)1、首先打开aa po...
3分钟辅助!epoker底牌透... 3分钟辅助!epoker底牌透视,德普之星透视,策略教程(有挂细节)1)德普之星透视辅助插件:进一步...
2分钟辅助!wepoker手机... 2分钟辅助!wepoker手机助手,pokermaster辅助器,法子教程(有挂工具)亲,关键说明,...
第五分钟辅助!pokemmo辅... 第五分钟辅助!pokemmo辅助器手机版下载,拱趴大菠萝怎么开挂,教材教程(有挂功能)1、玩家可以在...