qt5容器使用的简单笔记
//第一种声明方法QStringList list;//第二种声明方法QStringList* li=new QStringList();li->append("aa");qDebug()<<li->join("");//QT的容器分类顺序容器与关联容器//顺序容器 QList QLinkedLi...
·
//第一种声明方法
QStringList list;
// 第二种声明方法
QStringList* li=new QStringList();
li->append("aa");
qDebug()<<li->join("");
//QT的容器分类顺序容器与关联容器
// 顺序容器 QList QLinkedList QVector QStack QQueue
QList<int> l;
l.insert(0,1);
l.insert(1,2);
l.insert(2,3);
l.insert(3,4);
qDebug()<<l.at(3);
//后入先出
QStack<int> s;
s.push(1);
s.push(2);
qDebug()<<s.pop();
//先入先出
QQueue<int> q;
q.enqueue(2);
q.enqueue(3);
qDebug()<<q.dequeue();
////////////////////////////////////////////////////////////////
// 关联容器 QMap QMultiMap QHash QMultiHash QSet
QSet<int> set;
set.insert(2);
set.insert(3);
qDebug()<<set.contains(3);
QSet<QString> sset;
sset.insert("xixi");
sset.insert("lulu");
qDebug()<<sset.values();
QMap<QString,QString> map;
map.insert("a","content a");
map.insert("b","content b");
qDebug()<<map.value("a")<<map["b"];
map.remove("b");
QHash<QString ,QString> hash;
hash.insert("a","this is a hash");
hash.insert("b","this is b hash");
qDebug()<<hash.value("a")<<hash["b"]<<hash.value("c","this is c");
//如梦果没有c则返回this is c
// @1java的类型迭代器
QListIterator<int> iter(l);
while(iter.hasNext()){
qDebug()<<iter.next();
}
// 反向遍历
iter.toBack();
while(iter.hasPrevious()){
qDebug()<<iter.previous();
}
qDebug()<<"---------------";
//修改其值
QMutableListIterator<int> mutl(l);
while (mutl.hasNext()) {
qDebug()<<mutl.next();
}
// @foreach
foreach(int i,l){
qDebug()<<"-"<<i;
}
// STL类型的迭代
QList<int>::const_iterator dd;
for(dd=l.constBegin();dd!=l.constEnd();++dd){
qDebug()<<"*"<<*dd;
}
更多推荐



所有评论(0)