1、Vector介绍
1.1vector基本概念
vector与普通数组区别:不同区别是数组是静态空间,而vector可以是动态扩展。
动态扩展:并不是在原空间之后续接新空间,而是找更大的内存空间,然后将原始数据拷贝新空间,释放原空间。
vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
vector中文偶尔译作“容器”,但并不准确。它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组
1.2功能: vector数据结构和数组非常相似,也称为单端数组。
vector<int> test;//建立一个vector
test.push_back(1);
test.push_back(2);//把1和2压入vector test[0]就是1,test[1]就是2
2、std::vector使用
2.1小常识
使用vector,需添加头文件#include<vector>,
要使用sort或find,则需要添加头文件#include<algorithm>
2.2vector的初始化及赋值
std::vector<int>nVec; //空对象
std::vector<int>nVec(5,-1); //创建了一个包含5个元素且值为-1的vector
std::vector<std::string>strVec{"a","b","c"}; //列表初始化
"()" 和 "{}"
std::vector<int>nVec(10,1); //包含10个元素,且值为1;
std::vector<int>nVec{10,1}; //包含两个元素,值分别为10,1