QMap<结构体,结构体或变量>自定义排序

#include <QtCore/QCoreApplication>
#include <QMap>
#include <QDebug>
struct Persion
    int id;
    QString name;
    //重载操作符
    bool operator < (const Persion& per) const
        return id > per.id; //根据id降序排列
int main(int argc, char *argv[])
    QCoreApplication a(argc, argv);
    QMap<Persion,int> vec;
    //初始化数据
    Persion per1{ 2,"a" };
    Persion per2{ 5,"b" };
    Persion per3{ 1,"b" };
    Persion per4{ 4,"b" };
    Persion per5{ 3,"b" };
    //数据插入容器
    vec.insert(per1, 1);
    vec.insert(per2, 2);
    vec.insert(per3, 3);
    vec.insert(per4, 4);
    vec.insert(per5, 5);
    for (auto it : vec) {   //打印容器数据
        qDebug() << it;