C++ vector初始化二维数组与其迭代器

来源:互联网 发布:ubuntu 17.04安装软件 编辑:程序博客网 时间:2024/05/21 11:19

发现C++真是无边无界,自己只能尽力而为

最近为了写个计算几何作业,要写个数据结构,用到了vector动态存储,这才大概研究了一下。


平时最简单的一维vector初始化:vector<int> col

那么能不能初始化一个vector,内部是数组呢?

答案必须可以,看一下vector的本质定义:vector<Template>variable

那么实际上,将Template换为我们需要的数据单元就可以了。

Template替换为vector<int>,那么就是我们的二维vector数组的初始化了。


同样的,iterator<Template>variable也是如此,上一段非常简单的代码,大家就明白了。

<pre name="code" class="cpp">#include <iostream>#include <vector>using namespace std;int main(){vector<int> col;vector<vector<int>>array;for (int i=0;i<3;i++){col.push_back(i);col.push_back(i);array.push_back(col);col.erase(col.begin(),col.end());}vector<vector<int>>::iterator IE;vector<int>::iterator it;for(IE=array.begin();IE<array.end();IE++){for (it=(*IE).begin();it<(*IE).end();it++){cout<<*it<<" ";}cout<<endl;}return 0;}



0 0