C++標準ライブラリクラステンプレートvector

3113 ワード

vectorはC++標準ライブラリSTLの重要なクラステンプレートであり、より丈夫で、多くの付加能力を持つ配列に相当する.
vectorを使用する前にまずヘッダファイルを含める
#include 

1.vectorの一般的な操作:
vector < int > vector_1(size)    //      vector_1,   size
	
vector vector_2(vector_1)    //      vector_2,  vector_1         
	
vector vector_3(vector_1.begin(),vector_1.begin()+N)
//      vector_3,  vector_1  N       
	
vector < int > vector_4(size,num)    //      vector_1,   size,      num

vector.resize(size);    //         size
	
vector.front()   //        
	
vector.back()    //        
	
vector.begin()   //        
	
vector.end()     //        
	 
vector.size()    //        
	
vector[i]        //      i-1   

vector.insert(vector.begin()+N,elem);	//     N        elem. 
	
vector.push_back(elem); //                 elem. 

vector.erase(vector.begin()+M,vector.begin()+N);
//      M   N   
	
	
vector.pop_back(); //            
	
vector.clear();	//         
	
vector.empty();  //        ,     true,     false

例:

/**********
*Author:Pug_
*Time:2019-3-1 22:00:45
*Version:1.0
*FUnction:Use of vector
***********/
#include 
#include 
#include 
#include 
#include 
 
//        
#include 
using namespace std;
 
int main(){
 
	//vector                  
	//      int           ,size         
	//      integer     0; 
	int size = 10; 
	vector < int > integers(size); 
	
	//    integer,   integers1 
	vector integers1(integers);
	
	//    integer 5   ,   integers2
	vector integers2(integers.begin(),integers.begin()+5);
	
	//   integers3   size,    1 
	vector < int > integers3(size,1);
	
	integers.front();//      
	integers.back();//      
	
	integers.begin();//      
	integers.end(); //      
	 
	
	//     integers    
	cout<>integers[i];
	}
		
	
	//  integers  n        123. 
	int n = 1; 
	integers.insert(integers.begin()+n,123);
	
	// integers               123. 
	integers.push_back(123); 
	
	//  integers  m   n    ( 1   3 ) 
	int m = 1;
	n = 3; 
	integers.erase(integers.begin()+m,integers.begin()+n);
	
	//  integers        
	integers.pop_back(); 
	
	
	//   integers     
	integers.clear();
	
	//  integers    ,     1,     0 
	integers.empty();  
	
	return 0;
}

2.vectorを使用した2 D配列の作成
vector< vector > matrix_vector(SIZE_ROW, vector (SIZE_COL));

//        ,   SIZE_ROW,   SIZE_COL.
/**********
*Author:Pug_
*Time:2019-3-14 22:00:45
*Version:1.0
*FUnction:Use of 2 d vector
***********/
#include 
#include 
#include 
#include 
#include 

#include 
using namespace std;
int main(){
	
	//    3 3    
	vector< vector > v2d(3, vector (3));
	
	//   
	for(int i = 0;i