首页 > 代码库 > vector
vector
vector是我使用比较多的一个容器,它相当于一个动态的数组,在STL中给他提供了很多接口,简单易懂,接下来简单的演示一下它是如何使用的。
我一般使用的一些函数接口有size(),reserve(),empty(),begin(),end(),push_back(),find(),erase()。
使用vector一般都会用到迭代器iterator,它是在STL中数据结构与算法的桥梁。它相当于一个指针,用来指向vector中的元素。
vector<int>::iterator it;
1 #include <VECTOR> 2 #include <IOSTREAM> 3 #include <ITERATOR> 4 #include <algorithm> 5 6 using namespace std; 7 8 int main() 9 {10 vector<int> ivec;11 vector<int>::const_iterator it=ivec.begin();12 ivec.reserve(10); 13 cout<<ivec.size()<<endl;14 if (ivec.empty())15 {16 cout<<"empty!\n";17 }18 /*for (vector<int>::const_iterator it=ivec.begin();it!=ivec.end();it++)19 {20 cout<<*it<<"\t";21 }22 cout<<endl;*/23 24 //插入0-925 int i;26 for (i=0;i<10;i++)27 {28 ivec.push_back(i);29 }30 cout<<ivec.size()<<endl;31 if (ivec.empty())32 {33 cout<<"empty!\n";34 }35 36 //输出vector中的数据37 for (it=ivec.begin();it!=ivec.end();it++)38 {39 cout<<*it<<"\t";40 }41 cout<<endl;42 43 //查找vector中有没有6和12,有的话删除44 vector<int>::iterator iter;45 iter=find(ivec.begin(),ivec.end(),6);46 if (iter!=ivec.end())47 {48 cout<<"vector中有6~"<<endl;49 ivec.erase(iter);50 }51 else52 {53 cout<<"没找到6~"<<endl;54 }55 for (it=ivec.begin();it!=ivec.end();it++)56 {57 cout<<*it<<"\t";58 }59 cout<<endl;60 61 iter=find(ivec.begin(),ivec.end(),12);62 if (iter!=ivec.end())63 {64 cout<<"vector中有12~"<<endl;65 ivec.erase(iter);66 }67 else68 {69 cout<<"没找到12~"<<endl;70 }71 72 return 0;73 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。