现在的位置: 首页 > 综合 > 正文

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

2018年05月09日 ⁄ 综合 ⁄ 共 711字 ⁄ 字号 评论关闭

发现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;
}


【上篇】
【下篇】

抱歉!评论已关闭.