码迷,mamicode.com
首页 > 编程语言 > 详细

C++标准库vector类型的使用和操作总结

时间:2018-03-14 23:45:09      阅读:465      评论:0      收藏:0      [点我收藏+]

标签:存在   htm   size_t   for   下标   blank   返回   应该   个数   

  vector是一种类型对象的集合,它是一种顺序容器,容器中的所有对象必须都是同一种类型。vector的对象是可以动态生长的,这说明它在初始化时可以不用指定大小,而是再使用时根据元素所需的空间动态增长。C++中还有一种常见的类型string,它和vector有很多相似之处,具体可以看《C++标准库string类型的使用和操作总结》这篇博文。下面简单介绍一下vector容器的使用和操作。

一.声明和初始化

  使用vector之前必须在程序前的库包含中包含相应的头文件,如下:

#include<vector>
using std::vector;

  vector定义了几种构造函数,所以它提供了几种初始化的方式,如下:

vector<T>    v1;        //vevtor保存类型为T的对象。默认构造函数v1为空。
vector<T>    v2(v1);        //v2是v1的一个副本,v1和v2的元素类型必须相同
vector<T>    v3(n,i);        //v3包含n个值为i的元素
vector<T>    v4(n);            //v4包含初始化的元素的n个副本,默认元素值为0

二.常用操作

  vector的很多操作都类似于string对象的操作,下面仅仅列出一些常用的操作。

v.empty();        //如果v为空,则返回true,否则返回false
v.size();            //返回v中元素的个数
v.push_back(t);          //在v的末尾添加一个值为t的元素
v[n];                //返回v中位置为n的元素,从0开始计数
v1=v2;            //把v的内容替换为v2的一个副本
v1==v2;            //比较v1和v2的内容,相等则返回true,否则返回false
!=,<,<=,>和>=    //保持这些操作符惯有的含义

  值得注意的是在进行下标操作时,必须是已经存在的元素才能进行下标索引,否则通过下标索引赋值,不会添加任何元素,如:

vertor<int >    ivec;
for(vector<int >::size_type i=0;i!=10;++i)
    ivec[i]=i;
//上面则条语句不会像容器添加任何元素,因为ivec是空的对象,所以应该改成下面的语句
vertor<int >    ivec;
for(vector<int >::size_type i=0;i!=10;++i)
    ivec.push_back(i);

 

C++标准库vector类型的使用和操作总结

标签:存在   htm   size_t   for   下标   blank   返回   应该   个数   

原文地址:https://www.cnblogs.com/maluning/p/8570052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!