能够容纳两个或更多值的数据结构称之为容器比如数组;但是数组受限于长度
向量容器vector
声明容器步骤vector<type>vectorName
定义一个名字为v的容器
向量容器同样支持下标访问 v[i]
而如果再用原先的for循环来遍历容器,岂不是太掉价;于是就有了迭代器(iterator)
它包含=、*、+、-等简单运算,迭代器类似于智能的指针
每种容器都有自己的迭代器;迭代器可以访问容器的算法
定义迭代器;vector<int>::iterator it=v.begin();
it 是迭代器名字,前面说迭代器相当于一个智能指针,指针就有指向,所以it初始指向v向量容器的开始,既然是指针它的访问也如指针cout<<*it;
#include<iostream>
#include<vector>
#include<iterator>
int main(){
vector<int> v;
v.push_back(890); //给单个下标成员赋值
vector<int>::iterator it=v.begin(); //指针指向V起始值
cout<<*it<<endl; //通过指针访问输出
*it=0; //通过指针访问改变变量的值
cout<<v[0]; //输出v[0]
}
运行结果;