STL list容器对结构体进行排序 c++ list 对 结构体排序

声明结构体或类

class LineCutedInfo {
public:
    int relation;
    double MSE;//均方误差
    list moreLineAB;
    list moreLineCD;
    SampleLine targetLineAB;
    SampleLine targetLineCD;
    int mWayId;
    int mSid;
    int mPsid;
    int oWayId;
    int oSid;
    int oPsid;
};

 

全局方法 (声明为全局方法)

//比较函数:根据结构体里面的整型number排序
bool sortLineCutedInfoDouble(const LineCutedInfo& m1, const LineCutedInfo& m2);

bool sortLineCutedInfoDouble(const LineCutedInfo & m1, const LineCutedInfo & m2)
{
    return m1.MSE < m2.MSE;
        
}

使用如下:

声明 

list m_lstLineCutedInfo;

调用

//按照均方误差排序 取最小的一条线进行处理 从小到大排序
m_lstLineCutedInfo.sort(sortLineCutedInfoDouble);

你可能感兴趣的:(c++)