QT中用什么容器存储三元组?结构体访问太麻烦?又想让其不进行自动排序?

QList<QPair<QPointF, QPointF>> pointList;

1.项目中遇到一个需求,就是需要存储一个三个元组,又想按照插入的顺序存储(也就是不会进行自动排序)

    1.1.  结构体    ,访问麻烦,跨类传递,需要使用类名

    1.2. key/value存储,发现QMap,QHash,QMultiMap都会内部进行排序,

为什么不再加一层QPair?

QList<QPair<QPair<QPointF, QPointF>, bool>> pointList;

顺便把使用贴上:

void setData(const QList<QPair<QPair<QPointF, QPointF>, bool>> &pointList)
{
    for (int i = 0; i< pointList.size(); i++) {
        QPair<QPointF, QPointF> pairFist;
        pairFist.first = QPointF(0, 0);
        pairFist.second = pointList.at(i).first.second - pointList.at(i).first.first;

        QPair<QPair<QPointF, QPointF>, bool> pairSecond;
        pairSecond=(qMakePair(pairFist, pointList.at(i).second));

        m_pointList.append(pairSecond);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值