赞
踩
C++ 动态顺序容器vector
1.vector简介
vector是C++标准模板库中的部分内容,是模板类函数。之所以称它为容器,是因为它能容纳多种数据类型的对象。vector是顺序容器,容器中的元素按照严格的线性顺序排列,根据位置下标来存储和访问元素。同时它也是动态数组,空间运用比较灵活,随着元素加入,内部机制可以动态的增加或者减少元素,内存管理可以自动完成。
在程序里使用vector时要加入头文件
#include <vector>
2.vector的构造函数
vector有4种构造函数:
第一种:vector( const Allocator& = Allocator() )
说明:默认的构造函数,Allocator是缺省参数,使用的时候不用传参数。创建一个空的vector,没有分配任何空间,分配内存之前用数组下标或者迭代器访问数组将会使程序崩溃;可用push_back函数在尾部动态的插入元素,或者用resize函数分配空间。
使用:
vector<int> a; //创建一个int类型的动态数组a
vector<string> b; //创建一个string类型的动态数组b
a[0]=5; //程序崩溃,因为a是空的,没有分配内存
b.push_back("mark"); //在数组b尾部插入字符串mark
a.resize(10); //为a元素分配10个元素的内存空间
a[0]=5; //程序正常运行,因为a.resize(10)已经为其分配了10个元素大小的空间
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。