资深的教育行业网站开发青岛个人建站模板
2026/1/14 6:53:42 网站建设 项目流程
资深的教育行业网站开发,青岛个人建站模板,公司简介20 50字,哪个网站可以做puzzle一.简介 vector 实现的是一个动态数组#xff0c;即可以进行元素的插入和删除#xff0c;在此过程中#xff0c;vector 会动态调整所占用的内存空间#xff0c;整个过程无需人工干预vector 容器可以随着存储元素的增加#xff0c;自行申请更多的存储空间 二.常用语法 1.创…一.简介vector 实现的是一个动态数组即可以进行元素的插入和删除在此过程中vector 会动态调整所占用的内存空间整个过程无需人工干预vector 容器可以随着存储元素的增加自行申请更多的存储空间二.常用语法1.创建容器1vector double values; //创建存储double类型的vector容器valuies.reserve(20);//增加容器容量即20个元素2vector int primes {1,2,3,4,5};//创建包含5个元素的vector容器创建时制定元素个数和初始值3vector double values(20);//创建容器时指定元素个数4创建容器时圆括号中的2个参数既可以是常量也可是变量intnum20;doublevalue1.0;vectordoublevalues(num,value);或者vectordoublevalues(5,1.0);2.容器的大小和容量1size() //返回实际元素的个数2resize() //改变实际元素的个数3reserve() //增加容器的容量4empty()//判断容器是否为空若为空返回true否则返回falsesize:当前存储的元素个数capacity:容量指的是在不重新分配内存的情况下可以存储的元素的最大数量。vector容器中添加元素时如果当前容量不足以容纳新元素vector会自动分配更多的存储空间容纳新元素这个过程为扩容。3.数据访问1data() //返回指向容器中首个元素的指针通过该指针可以访问甚至修改容器中的元素2begin()//返回指向容器中第一个元素的正向迭代器即指向【首元素】的位置3end()//返回指向容器中最后一个元素所在位置后一个位置的正向迭代器即指向【尾元素1】的位置4rbegin()//返回指向最后一个元素的反向迭代器5rend()//返回指向第一个元素之前的反向迭代器6at()//使用经过边界检查的索引访问元素 例如at(0)。 索引造成越界时抛出std::out_of_range异常7front()//返回第一个元素的引用8back()//返回最后一个元素的引用4.数据操作1push_back(value) //在序列尾部添加元素2pop_back() //移除序列尾部的元素3insert(posion,value) //在指定的位置插入一个或多个元素 position从0开始4iterator erase(pos) //移除一个或多个元素pos 为指定被删除元素位置的迭代器同时该函数会返回一个指向删除元素所在位置下一个位置的迭代器5clear() //移除所有的元素容器大小变为06swap() //交换两个容器的所有元素5.访问容器中的数据方法1容器名[n] n代表下标从0开始。2at(n) 索引造成越界时抛出std::out_of_range异常。3data()成员函数返回指向容器中首个元素的指针通过该指针可以访问甚至修改容器中的元素。例如 *(vectors.data()1) 代表容器中第二个元素的值6.迭代器和普通指针使用相同使用方法1容器类名::iterator迭代器名2*迭代器名表示迭代器指向的元素#includevector#includeiostreamusing namespace std;intmain(){vectorinta{1,2,3,4,5}//传统方法 遍历容器元素for(inti0;ia.size();i){couta[i] ;}//使用迭代器 遍历容器元素vectorint::iterator it;for(ita.begin();it!a.end();it))){cout*it ;}}三.demo#includeiostream#includevectorusingnamespacestd;intmain(){coutvector optendl;vectorchartest;test.push_back(T);//容器末尾添加元素test.push_back(E);test.push_back(S);test.push_back(T);intcounttest.size();//元素的个数coutvector size:countendl;intcapacitytest.capacity();//容器容量coutcapcity :capacityendl;//访问容器中的元素cout使用迭代器访问;vectorchar::iterator it;//使用迭代器for(ittest.begin();ittest.end();it){cout*it,;//*it表示迭代器指向的元素}coutendl;//使用容器名cout使用容器名访问;for(inti0;itest.size();i){couttest[i],;//容器名[n] 访问容器元素}coutendl;//使用at()cout使用at():;for(inti0;itest.size();i){couttest.at(i),;//使用at(n) 访问容器元素}coutendl;//使用data()cout使用data访问;for(inti0;itest.size();i){cout*(test.data()i),;//data() 访问容器元素}coutendl;//移除尾部数据test.pop_back();coutlast data:test.at(test.size()-1)endl;//插入数据test.insert(test.begin(),a);coutfirst value:test.at(0)endl;//删除数据test.erase(test.begin());coutfirst value:test.at(0)endl;coutfront value:test.front()endl;//第一个元素的引用coutback value:test.back()endl;//最后一个元素的引用return0;}四.运行效果

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询