当前位置: 首页 > news >正文

学徒制下的课程网站建设互联网排行榜

学徒制下的课程网站建设,互联网排行榜,php网站开发手机绑定,茗哥网站建设一. QVector容器是一个动态数组,可以容纳任意数量的元素,在相邻的内存中存储给定的数据类型作为一组数据,在QVector前部或中间位置插入元素都会导致内存中大量的数据元素移动,这使得操作速度会减慢.可使用迭代器对这组数据进行访问. 和其他的容器类型类似,QVector…

一.

QVector容器是一个动态数组,可以容纳任意数量的元素,在相邻的内存中存储给定的数据类型作为一组数据,在QVector前部或中间位置插入元素都会导致内存中大量的数据元素移动,这使得操作速度会减慢.可使用迭代器对这组数据进行访问.

和其他的容器类型类似,QVector容器的功能也有添加元素append(),删除元素remove(),修改元素replace(),查询contains(),访问.......

    vStarts<<"鹿晗"<<"热巴";        //添加(尾部插入)vStarts.append("杨紫");        //头部插入vStarts.prepend("Anglebaby");  //尾部插入vStarts.insert(2,"小明");      //指定位置插入vStarts.replace(2,"迪丽热巴");//替换//删除元素下标为0的元素vStarts.remove(0);//删除某个元素vStarts.removeAll("鹿晗");    //移除所有比较结果相同的元素vStarts.removeAt(0);          //移除指定位置的元素vStarts.removeOne("杨紫");    //移除比较结果相同的第一个元素vStarts.clear();删除所有元素qDebug()<<"是否有小明?:"<<vStarts.contains("小明");//查询是否有该元素

使用迭代器访问数据.

1.

java风格迭代器

    //java风格只读迭代QVectorIterator<QString> it_sr(vStarts);for(it_sr.toFront();it_sr.hasNext();){qDebug() << it_sr.next();}//java风格读写迭代QMutableVectorIterator<QString> it_srw(vStarts);for(it_srw.toFront();it_srw.hasNext();){QString s = it_srw.next();//方式1.使用QString类型的compare()方法比较字符串.比较结果相同则返回0(假).if(!QString::compare(s,"热巴")){    it_srw.setValue("赵丽颖");}//方式2.//if(s == "热巴"){//    it_srw.setValue("赵丽颖");//}}

2.

STL风格迭代器.

    //STL读写迭代器QVector<QString>::iterator it_VWR;it_VWR = vStarts.begin();for(;it_VWR != vStarts.end();++it_VWR){*it_VWR = *it_VWR + "好人";qDebug()<<*it_VWR;}//STL只读迭代器QVector<QString>::const_iterator it_VR;it_VR = vStarts.constBegin();for(;it_VR != vStarts.constEnd();++it_VR){qDebug()<<*it_VR;}

二.

容器QMap类型由键(key)值(value)对组成一个元素.通过键key映射到值value.

第一个QString数据类型值是键key,第二个QString数据类型值是值value.一个键对应一个值,以key字母顺序(A~Z)存储数据.

    //一个键对应一个值QMap<QString,QString> infoMap;//添加元素infoMap.insert("王祖蓝","163cm");   //方式1infoMap["姚明"] = "226cm";          //方式2infoMap.insertMulti("易烊千玺","173cm");   //方式3.如果映射中已经存在具有相同键的项,则该函数将简单地创建一个新项

通过key找value

    qDebug() <<"姚明:" <<infoMap["姚明"];               //226cmqDebug() <<"易烊千玺:" <<infoMap.value("易烊千玺");  //173cm

通过value找key

qDebug()<<"173cm的是谁呢?"<<infoMap.key("173cm"); //易烊千玺

1.

java风格迭代器

与QVector容器迭代器非常类似,打印时要把迭代器位置指向下一个位置.同时打印键值对只能分别把键key和值value写出来,不能把俩个键值对当做一个整体来打印输出.

    //java风格只读迭代器QMapIterator<QString,QString> it_r(infoMap);for(it_r.toFront();it_r.hasNext();){//方式1//it_r.next();//qDebug()<<it_r.key() <<":"<<it_r.value();//以key的字母A~Z作为排序的依据.有序存储.//方式2qDebug()<<it_r.next().key() <<":"<<it_r.value();}    //java风格读写迭代器QMutableMapIterator<QString,QString> it_rw(infoMap);if(it_rw.findNext("163cm")){    //查找元素it_rw.setValue("163.1cm");  //重新设置元素值value}for(it_rw.toFront();it_rw.hasNext();){it_rw.next();//获取元素qDebug()<<it_rw.key()<<":"<<it_rw.value();}

2.

STL风格迭代器

    //STL风格读写迭代器QMap<QString,QString>::iterator it_QWR;it_QWR = wMap1.begin();for(;it_QWR != wMap1.end();++it_QWR){qDebug()<<it_QWR.key()<<it_QWR.value() + "-STL";}//STL风格只读迭代器QMap<QString,QString>::const_iterator it_QR;it_QR = wMap1.constBegin();for(;it_QR != wMap1.constEnd();++it_QR){qDebug()<<it_QR.key()<<it_QR.value() + "-stl";}

3.

前面讲的是一个键对应一个值的情况,下面是一个键对应多个值的情况.

    //一个键对应对多个值QMultiMap<QString,QString> wMap1;wMap1.insert("spring","15°C");wMap1.insert("summer","35°C");//一个键key插入多个值valuewMap1.insert("summer","39°C");wMap1.insert("summer","40°C");wMap1.insert("autumn","23°C");wMap1.insert("winter","-5°C");wMap1.insert("winter","-15°C");wMap1.insert("winter","-55°C");wMap1.remove("winter","-55°C"); //删除元素//打印一个键的多个值(键值对).所有winter键key的键值对都会被打印出来qDebug()<<endl<<"winter:"<<wMap1.values("winter");

通过value()函数,参数填写键值key,就能打印所有相同键的值value.即一个键key的对应的多个值value.使用迭代器访问的方式与上面一样.

三.

QHash容器与QMap容器一样,也是使用键值对的方式存储数据,它实现了一个哈希表,通过哈希函数将键映射到值,数据存放无序,任意顺序存储,所以它的存储速度比QMap更快.

    //QHash类,数据存放无序QHash<int,QString> moneyHash;moneyHash.insert(1,"一块钱");moneyHash.insert(10,"十块钱");moneyHash.insert(20,"二十块钱");   //方式1moneyHash[50] = "五十块钱";        //方式2moneyHash[100] = "一百块钱";moneyHash.insertMulti(100,"毛爷爷"); //一个键有多个值使用函数insertMulti()插入//该方式让前面key为100的value"一百块钱"会被"毛爷爷"覆盖,insertMulti():一个键多个值会被保存//moneyHash[100] = "毛爷爷";  

需要注意的是,如果一个键映射多个值,使用方式2并不能添加一个新的键值对,它只会在同一个键的键值对上,把前面相同键的值覆盖掉.所以使用insertMulti()函数才会添加新的键值对,而不会覆盖原有的键值对.

1.

java风格迭代器

迭代器的使用方式和上面的一样,这里就不一一列举了.

    //java风格只读迭代器QHashIterator<int,QString> it_mr(moneyHash);//java风格读写迭代器QMutableHashIterator<int,QString> it_mrw(moneyHash);

2.

STL风格迭代器

由于迭代器的访问方式和前面的QMap类似,就不一一详细说明.

    //STL读写迭代器    QHash<int,QString>::iterator it_SWR;   //STL只读迭代器QHash<int,QString>::const_iterator it_SR;

all~~

http://www.yayakq.cn/news/628033/

相关文章:

  • 啤酒网站建设制造网站建设
  • 桂林象鼻山要门票吗dede网站优化
  • 怎样申请网站域名网站收录突然全部没有了
  • 徐州网络科技有限公司seo指的是什么意思
  • 罗山网站建设甘肃省住房和城乡建设局网站
  • 猎头公司人才招聘重庆网站seo方法
  • 帮客户做网站平台犯法吗北京建站者公司
  • 什么大的网站是帝国cms做的九四玩手游代理平台
  • 高校门户网站建设方案合肥中小型企业网站建设方案模板
  • 网站建设对电子商务的意义网站建设服务好的商家
  • 网站建设与管理专业自我评价装潢设计师培训
  • asp一个空间建多个网站系统在哪里创建网站平台
  • 石家庄房和城乡建设部网站电子政务门户网站建设
  • 邹城市住房和建设局网站购买了网站如何使用
  • p2p网站开发公司哪个学校设有网站开发专业
  • 建设部网站不支持360文本网站代码空两格怎么做
  • 设计网站的结构时网站生成
  • 网站建设规划过程和下载安装微信
  • 网站群发软件海淀教育人才网站
  • 快飞建站做私人小网站赚钱吗
  • 个人网站命名 备案html代码格式化
  • 网站建设开发怎么样wordpress 评论框登陆
  • 成都网站开发定wordpress如何修改导航样式
  • PHP网站开发技术期末作品办公楼网络设计方案
  • 把网站从空间删除网站程序指的是什么
  • 网站建设咨询客户话术济南优化网站方法
  • 做同城网站还有机会吗做一个网站价格
  • 网站网络推广优化百度竞价点击价格
  • 宁夏建设工程质量安全监督网站有关师德建设的网站
  • 珠海市住房城乡建设局网站东莞网站推广电话