一、头文件
#include <vector>
二、什么是vector
vector是STL中的动态数组。内部设计是以数组的形式存储,所以可以兼容一切对数组的操作。
vector是一个容器,可以容纳各种类型int,string,struct等
vector里面嵌套vector,其功能就相当于二维的动态数组!
三、vector的初始化
vector <int> arr;//arr是一个空的vector
vector <int> arr(n);//n整形元素,每个都默认初始化为0(int类型的默认初始化为0)
vector <string> arr(n);//n个字符串,都默认初始化为空字符串(string类型的默认初始化为空字符串)
vector <int> arr1=arr2;
vector <int> arr={1,2,3,4,5,6,7};
vector <int> arr(n,num);//n个元素,每个元素都初始化为num
四、访问vector中的元素
方式一:用下标法
只能访问已存在的元素。
以下代码错误:
vector <int> arr;
arr[0]; //错误!!!!
如果是要新加入元素,只能用push_back()
方式二:迭代器法
迭代器其实就是指针
补充:auto的使用
因为迭代器it的变量类型与vector的定义类型有关 ----vector<类型>::iterator
所以用auto来自动推定it类型,很省代码,很方便!!!
五、vector成员函数insert()
六、vector的成员函数push_back()
vector <int> a;
a.push_back(7);
七、vector嵌套
vector嵌套,可以动态增加vector的行数
八、vector添加元素的方法
https://blog.csdn.net/weixin_46308081/article/details/118607011