vector 學習初步(1)

pengfoo發表於2012-03-19
 

 相信,例子最直觀,從例項裡學習,最有效。

例1:

#include <iostream>
using namespace std;
#include <vector>
int main()
{
   const int seq_size=18;
   vector<int> pell_seq(seq_size);//將pell_seq定義為一個vector object,可儲存18個int元素。
    pell_seq[0]=1;
   pell_seq[1]=2;
   for(int ix=2;ix<seq_size;++ix)
     pell_seq[ix]=pell_seq[ix-2]+2*pell_seq[ix-1];
   for(int ix=0;ix<seq_size;++ix)
     cout<<pell_seq[ix]<<' ';
  cout<<endl;
  getchar();
  return 0;
}


例2:以陣列來初始化vector

#include <iostream>
using namespace std;
#include <vector>
int main()
{
	const int seq_size=18;
	int elem_seq[seq_size]={
		1,2,3,
		3,4,7,
		2,5,12,
		3,6,10,
		4,9,16,
		5,12,22
	};

	/*
	***
	//vector不支援上述這種初始化序列,有個冗長的寫法
	vector<int> elem_seq(seq_size);
	elem_seq[0]=1;
	elem_seq[1]=2;
	//...
	elem_seq[17]=22;

	***
	*/

	//以elem_seq的值初始化elem_seq
	vector<int> elem_vals(elem_seq,elem_seq+seq_size);
	for(int ix=0;ix<elem_vals.size();++ix)//elem_vals知道自己的大小為何
		cout<<elem_vals[ix]<<' ';
	cout<<endl;
	getchar();
	return 0;
}


 

相關文章