网上总结vector原理和用法的文章有很多,我也是在学习中逐渐摸索总结,希望能够和大家共同进步。
VECTOR简介
vector是STL标准模板库中的重要容器之一,可以通过设置来存放各种不同类型的数据,在STL中vector的实现方式是类模板,这些模板的参数允许我们指定容器中元素的数据类型,在结构上更加灵活,并且能够避免重复编码。
VECTOR实现
在工程中创建一个vector对象,在vector上右键转到定义,可以找到vector对应的实现代码。
template<class _Ty,
class _Alloc = allocator<_Ty> >
class vector
: public _Vector_alloc<_Vec_base_types<_Ty, _Alloc> >
{ // varying size array of values
public:
typedef vector<_Ty, _Alloc> _Myt;
...
}
由于代码非常多,所以在这里只贴一小部分,能够看出,vector实际上是一个模板类,它通过类模板的形式来达到存储不同种数据的实现。也可以将其看做是存放某种数据类型的动态数组。
VECTOR使用方法
1.建立容器(构造对象)
//---无初值---
vector<int> v1; //表示存放int型的容器
vector<double> v1; //表示存放double型的容器
class color{...};
vector<c