C++标准库vector类型



Vector简介


vector是定义在C++标准模板库,它是一个多功能、能够操作多种数据结构和算法的模板类(关于模板类我们后面会介绍,如何创建自己的模板类)。vector是一个容器,能够像容器一样存放各种类型的对象。vector是一个能够存放任意类型的动态数组,能够增加和删除元素,可以完全替代C语言风格的动态数组,由于vector能够自动的管理内存,我们不需要考虑内存的增长和释放、具有很好的安全性。



定义和初始化vector对象


1.包含头文件 ,使用命名空间


#include<vector>
using namespace std;


2.定义和声明vector对象


vector<T> v1;  //T是一种数据类型,系统定义的或者你自己定义的类,但是不能是引用,T类型的,但是没有元素
vector<T> v2(v1);   //v1与v2必须是同类型,等同于赋值运算符,两个变量的元素一样
vector<T> v2 = v1; //同上
vector<T> v3(n, value) //n个重复元素 ,每个元素值都是value
vector<T> v4(n)   //n个对象,对象的值根据类型不同而不同,自动初始化,如果是int类型,就被初始化为0;如果是字符串,就被初始化为空的字符串


下声明和定义都是正确的:


vector1.png



向vector添加元素和删除元素


push_back(value); //在最后面添加一个元素
pop_back(value); //将最后面的元素删除,不会返回元素的值



对vector中的元素进行访问


V1[n]; //下标访问法,0~n~size-1
V1.at[n];  //下标访问法,0~n~size-1,使用at访问更加安全一些,因为at访问的时候将在运行期间检查非法的索引,这种检查的代价是运行时间更长
front(); //返回最前面的一个元素
back(); //返回最后面的一个元素



其他vector操作


Size()  // 返回数组的长度
empty() // 判断数组是否为空
==  //判断相等
比较运算符:>=  <=



vector的实例


文本编辑器:输入的每一行数据,输出与的时候每一行显示行号,数据,字符数。


测试代码如下:


vector2.png


运行结果如下:声明了一个string类型的数组,存储所有的字符串。利用两个临时变量s,一个存储,一个读出数据并计算字符串的长度。这里的字符串是没有换行符的。


vector3.png



【本文由麦子学院独家原创,转载请注明出处并保留原文链接】

logo
© 2012-2016 www.maiziedu.com
蜀ICP备13014270号-4 Version 5.0.0 release20160127

有一位课程导师想与你聊聊

客服热线 400-862-8862

回到顶部