这里写目录标题
————————————————————————————————————————
3.2 vector容器
3.2.1 vector基本概念
功能:
vector 数据结构和数组非常相似,也称为单端数组
vector 与普通数组区别:
不同之处在于数组是静态空间,而vector可以动态扩展
动态扩展:
并不是在原空间之后续接新空间,而是找更大的内存空间,然后将原数据拷贝新空间,释放原空间
vector容器的迭代器是支持随机访问的迭代器。
3.2.2 vector构造函数
函数原型:
vector<T> v; //采用模板类实现类实现,默认构造函数
vector(v.begin(), v.end()); //将区间中的元素拷贝给本身
vector(n,elem); //构造函数将n个elem拷贝给本身
vector(const vector &vec); //拷贝构造函数
—————————————————————————————————————————————————————————————————————————————————————————————
#include <iostream>
#include <vector>
using namespace std;
#include <algorithm>
void printVector(vector<int>&v)
{
for (vector<int>::iterator it = v.begin(); it != v.end(); it++)
{
cout << *it << " ";
}
cout << endl;
}
void test01()
{
vector<int>v1;
for(int i = 0; i < 10; i++)
{
v1.push_back(i);
}
printVector(v1);
//通过区间的方式进行构造
vector<int> v2(v1.begin(), v1.end());
printVector(v2);
//
vector<int>v3(10,100);
printVector(v3);
//
vector<int>v4(v3);
printVector(v4);
}
int main()
{
test01();
system("pause");
return 0;
}
3.2.3 vector 赋值操作
函数原型:
vector & operator= (const vector &vec); //重载等号操作符
assign(beg, end); //将区间中的数据拷贝赋值给本身
assign(n, elem); //将n个elem拷贝赋值给本身
—————————————————————————————————————————————————————————————————————————————————————————————
#include <iostream>
#include <vector>
using namespace std;
#include <algorithm>
void printVector(vector<int>&v)
{
for (vector<int