STL容器——2.vector 向量

一、头文件

vector 需要 <vector> 头文件

二、操作

1.声明

vector 用如下格式声明

vector<int/*你想要的数据类型*/> v1;
vector<int/*你想要的数据类型*/> v2(5/*你想预留的空间*/);

这个程序首先声明了一个 int 类型的 vector v1
然后声明了一个 int 类型的 vector v2,并预留了 5 位空间

2. size()

size() 函数用来求向量的占用空间
e.g.:

vector<int> v(5)
int len=v.size();

这个程序首先声明了一个 int 类型的 vector v
然后声明了一个 int 类型的变量 len,并将其赋值为 v 的占用空间

3. push_back()

push_back 函数用来在向量末尾加入元素
其中有一个参数:
push_back(ele)
ele 表示要加入的元素(注意数据类型)
这时候会出现一种情况:
向量的预留空间只有 5 ,并且占满了,再在末尾加入元素会怎么样呢?
C++会在后面自动添加一个空间,也就是现在有 6 个空间了
e.g.:

vector<int> v;
v.push_back(1);

这个程序首先声明了一个 int 类型的 vector v
然后将 1 加入 v 的末尾

4.访问

向量的索引从 0 开始,到 v.size()-1结束
如果访问到没有预留空间的下标会导致RE
e.g.:

vector<int> v(5);
int len=v.size();
for(int i=1;i<=len;i++){
    cout<<v[i]<<" ";
}

这个程序首先声明了一个 int 类型的 vector v,并预留了 5 位空间
然后声明了一个 int 类型的变量 len, 并将其赋值为 v 的占用空间
最后遍历了 v 的每一个元素,并以空格分隔将其输出

今天先更到这里,明天再更吧!

本帖仅列举常用操作

有错误请指正!