vector容器

First

定义和初始化vector对象 (主要是()与{ }的区别)

定义 含义
vector<T> v1 v1是一个空vector,它潜在的元素是T类型,执行默认初始化
vector<T> v2(v1) v2中包含有v1所有元素的副本
vector<T> v2=v1 等价于v2(v1)
vector<T> v3(n,val) v3包含了n个重复的元素,每个元素的值都是val
vector<T> v4(n) v4包含了n个重复地执行了值初始化的对象
vector<T> v5{a,b...} v5包含了初始值个数的元素,每个元素被赋予相应的初始值
vector<T>v5={a,b..} 同上


vector支持的操作

表达式 含义
v.empty() 如果v中不含任何元素,返回true,否则返回false
v.size() 返回v中元素的个数
v.push_back(t) 向v的末尾添加一个值为t的元素
v[n] 返回v中第n个位置上元素的引用
v1=v2 用v2中的元素替换v1中的元素
v1={a,b...} 用列表中元素的拷贝替换v1中的元素
v1==v2 or v1!=v2 当且仅当它们的元素数量相同且对应位置的元素值都相同时才相同
<,<=,>,>= 以字典顺序进行比较


一些注意的地方

vector<int> v{1,2,3,4,5,6,7,8,9};
for(auto &i : v)  //对于v中的每一个元素(注意:i是一个引用)
     i*=i;
for(auto i : v)
cout<<i<<" ";
cout<<endl;
//for用C11的标准时,注意要想对数组或者容器(严格来说vector并不是一个容器,而是一个类模板)
//中的元素进行修改 i 应用引用的方式使用。


//以10分为一个分数段 统计成绩的数量0~9,10~19,...,90~100
vector<unsigned>scores(11,0) //11个分数段,全部初始化为0
unsigned grade;
while(cin>>grade){
    if(grade<=100)
        ++scores[grade/10];
}

最后文章读到这里的你,有什么好的想法,建议,欢迎在评论区留言。


---小学馆

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.Arraylist and Vector implement the interface List. 2.th...
    铜雀春深锁不住阅读 2,939评论 0 0
  • 因为脚扭伤了所以在家休养,忘了将我的彩铅带回家所以这段时间 都没画画,就安安心心的做个宅宅的程序媛了。这是这段时间...
    龄杺阅读 3,122评论 0 0
  • 因为vector是按照顺序的方式存储元素的,所以通过预分配策略减少内存的申请。vector管理内存的函数包括: r...
    lintong阅读 4,330评论 0 1
  • 使用方法:首先先把需要用到vector容器的.m文件的后缀名修改为.mm。然后在再.mm文件中导入头文件#incl...
    景彧阅读 7,276评论 0 4
  • 有人虔誠的膜拜神像 然後想像自己充滿了相同的力量 有人演著英豪偉人微妙微俏 然後想像自己就是戲劇裏的人物 放肆的自...
    蔡振源阅读 981评论 0 1