Qt工作笔记-QMap的进一步操作
生活随笔
收集整理的這篇文章主要介紹了
Qt工作笔记-QMap的进一步操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
QMap可以放如下類型的數據(key里面放一個類)
clear前,內部數據析構后
代碼如下:
#include <QApplication> #include <QMap> #include <QVector> #include <QDebug>class DoubleBus{ public:DoubleBus(const qint64 key1,const qint64 key2){m_key1=key1;m_key2=key2;}qint64 m_key1;qint64 m_key2; };class Element{ public:Element(const qint64 keyId,const QString key){m_keyId=keyId;m_key=key;}qint64 m_keyId;QString m_key; };int main(int argc, char *argv[]) {QApplication a(argc, argv);QMap<DoubleBus*,QVector<Element*>> m_myMap;DoubleBus *doubleBus1=new DoubleBus(100000,100001);DoubleBus *doubleBus2=new DoubleBus(200000,200001);QVector<Element*> myEleVec1;myEleVec1.append(new Element(100,"類型一"));myEleVec1.append(new Element(101,"類型二"));myEleVec1.append(new Element(102,"類型一"));myEleVec1.append(new Element(103,"類型二"));m_myMap.insert(doubleBus1,myEleVec1);QVector<Element*> myEleVec2;myEleVec2.append(new Element(200,"類型一"));myEleVec2.append(new Element(201,"類型二"));myEleVec2.append(new Element(202,"類型二"));myEleVec2.append(new Element(203,"類型一"));m_myMap.insert(doubleBus2,myEleVec2);//析構QMapIterator<DoubleBus*,QVector<Element*>> it(m_myMap);while(it.hasNext()){it.next();for(int i=0;i<it.value().size();i++){delete it.value()[i];}delete it.key();}m_myMap.clear();return a.exec(); }總結
以上是生活随笔為你收集整理的Qt工作笔记-QMap的进一步操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenCV文档阅读笔记-brief C
- 下一篇: Qt工作笔记-moc的认识