365体育网页版在线登录官网-365平台被黑不给出款怎么办-beat365为什么登录不了

深度阅读体验

365体育网页版在线登录官网

Qt学习笔记常用容器

主要说Qt的以下几种容器 1.QList 2.QLinkedList 3.Map 和一些常用的容器方法的使用 qSort qCopy qFind 1.QList泛型集合是最常用的一种容器 看一下它的常用

Qt学习笔记常用容器

主要说Qt的以下几种容器

1.QList

2.QLinkedList

3.Map

和一些常用的容器方法的使用

qSort

qCopy

qFind

1.QList泛型集合是最常用的一种容器

看一下它的常用 操作

添加删除和两个迭代器

代码语言:javascript复制QListIterator和QMutableListIterator代码语言:javascript复制#include

#include

#include

int main(int argc, char *argv[])

{

QCoreApplication a(argc, argv);

QList listInt;

//添加

for(int i =0;i<10;i++)

{

listInt.append(i);

//也可以这样添加元素

//listInt<

}

//删除

qDebug()<<"删除3";

listInt.removeAt(3);

//查询

foreach (int item, listInt) {

qDebug()<

}

qDebug()<<"Iterator";

//迭代器

QListIterator iterator(listInt);

while(iterator.hasNext())

{

qDebug()<

if(iterator.hasNext())

qDebug()<<"the Next is :"<

}

//返转

iterator.toBack();

while(iterator.hasPrevious())

{

qDebug()<

}

qDebug()<<"可变迭代器QMutableListIterator";

//可变的迭代器

QMutableListIterator mutableiterator(listInt);

mutableiterator.insert(13);

mutableiterator.insert(14);

mutableiterator.insert(15);

while(mutableiterator.hasNext())

{

int i= mutableiterator.next();

if(i==2||i==6)

{

mutableiterator.remove();

}

}

//查询

foreach (int item, listInt) {

qDebug()<

}

return a.exec();

}2.QLinkedList

QLinkedList和QList差不多,不同的一点是它是用迭代器做的访问项

也就是说QList list只以通过这样访问它的内容list[i]而QLinkedList不可以只能用Iterator

性能上它要高于QList

代码语言:javascript复制#include

#include

#include

int main(int argc, char *argv[])

{

QCoreApplication a(argc, argv);

QLinkedList link;

link<<1<<2<<2<<3<<4;

qDebug()<<"迭代器访问QLinkedListIterator";

QLinkedListIterator iterator(link);

while(iterator.hasNext())

{

qDebug()<< iterator.next();

}

//删除第一个2

link.removeOne(2);

//添加两个3这两种方式一样

link.push_back(3);

link.append(3);

//删除所有的3

link.removeAll(3);

qDebug()<<"普通访问foreach";

foreach (int item, link) {

qDebug()<< item;

}

qDebug()<<"迭代器QMutableLinkedListIterator";

QMutableLinkedListIterator mutableIter(link);

while(mutableIter.hasNext())

{

int i= mutableIter.next();

if(i==1)

{

mutableIter.insert(90);

}

if(i==4)

{

mutableIter.remove();

}

qDebug()<

}

qDebug()<<"迭代器QMutableLinkedListIterator重新访问";

mutableIter.toFront();

while(mutableIter.hasNext())

{

int i= mutableIter.next();

qDebug()<

}

//mutable

return a.exec();

}代码语言:javascript复制a3Map

map类型是一个键值对 key/value组成 其它的和上边的两个集合没什么区别

代码语言:javascript复制#include

#include

#include

int main(int argc, char *argv[])

{

QCoreApplication a(argc, argv);

QMap map;

map.insert(1,"a");

map.insert(2,"b");

map.insert(3,"c");

QMutableMapIterator mutableIte(map);

while(mutableIte.hasNext())

{

mutableIte.next();

qDebug()<

}

return a.exec();

}下边说一下常用的集合操作方法

qSort

qCopy

qFind

代码语言:javascript复制#include

#include

#include

#include

int main(int argc, char *argv[])

{

QCoreApplication a(argc, argv);

QList listStrs;

listStrs<<10<<5<<8<<2<<7;

qSort(listStrs);

foreach (int i, listStrs) {

qDebug()<

}

qDebug()<<"____________________________";

listStrs.clear();

listStrs<<10<<5<<8<<2<<7;

qSort(listStrs.begin()+1,listStrs.end()-1);

foreach (int i, listStrs) {

qDebug()<

}

qDebug()<<"______________qCopy______________";

QVector newVec(5);

qCopy(listStrs.begin(),listStrs.end(),newVec.begin());

foreach (int i, newVec) {

qDebug()<

}

qDebug()<<"______________qFind______________";

listStrs.clear();

listStrs<<2<<5<<8<<2<<7;

QList::const_iterator iterFin=qFind(listStrs,2);

if(iterFin!=listStrs.end())

{

qDebug()<<*iterFin;

}

else

{

qDebug()<<"notFound!";

}

return a.exec();

}

相关阅读

365体育网页版在线登录官网 龙 蛇成语(龙蛇的成语有哪些)(24个)

龙 蛇成语(龙蛇的成语有哪些)(24个)

龙 蛇成语(龙蛇的成语有哪些):一龙一蛇,不辨龙蛇,二龙戏珠,变化多端,声势浩大,岁在龙蛇,强龙不压地头蛇,恶龙不斗地头蛇,笔底龙蛇,笔走龙蛇,

365平台被黑不给出款怎么办 在线学习汉语拼音

在线学习汉语拼音

VIPKid将美国和加拿大的教师与中国(以及全球)的儿童联系起来,进行实时的在线英语沉浸式学习。VIPKid成立于2013年,经过一年的试点和开发后

beat365为什么登录不了 html创建电子邮件链接教程

html创建电子邮件链接教程

本篇文章给大家带来的内容是介绍在HTML中要怎么创建电子邮件链接,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。