QT的QList排序

本文介绍了一段C++代码,展示了如何创建一个Student类,使用QList来存储对象,并实现数据初始化和排序功能。通过`insertData`函数添加Student对象,`compareBarData`函数进行年龄升序排序,最后使用`qSort`进行列表排序。这为理解和应用C++容器及排序提供了实例。
摘要由CSDN通过智能技术生成

数据类型:


class Student

{

public:

    Student();

    QString name;

    int age;

    int num;
 
    void insertData();  // 初始化数据

    QList<Student> m_stu;    // Qlist列表数据

    static bool compareBarData(const Student &stu1, const Student &stu2);// 用于对比的 函数

   int m_value = 1;


};

添加 初始化数据 ,可以用按钮调用一直添加.


void Dialog::insertData()
{

      Student a;

      m_value  ++;

      a.age =10 + m_value;

      a.num = 20 + m_value*2;

      a.name = "asdf";



      m_stu.append(a);  

}

 对比函数声明

bool Dialog::compareBarData(const Student &stu1, const Student &stu2)
{

       return stu1.age > stu2.age;

}

重点: 在你需要使用排序的地方调用qSort就可以了.

qSort(m_stu.begin(),m_stu.end(),compareBarData);

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值