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);
}
}