C++の基礎知識(四)--vector


       vector        ,                ,         。  STL            (           )vector                                          。  , vector                  。     ,         vector, #include。
            :
vector<int> a;//    int   a
vector<int> a(10);//         10   
vector<int> a(10,1);//         10      1   
vector<int> b(a);//      a     b
vector<int> b(a.begin(), a.begin()+3) ;// a     0   2 ( 3 )    b    。
          :
int n[] = {1, 2, 3, 4, 5};
vector<int> a(n, n+5) ;//   n  5       a   
vector<int>a(&n[1],&n[4]);// n[1] - n[4]          a   

要素の入力とアクセスは、通常の配列のようにcin>>で入力できます.cout<
#include
#include
using namespace std ;
int main()
{
 vector<int>a(10,0);//   10   0   a           
 cin >>a[2] ;
 cin >>a[5] ;
 cin >>a[6] ;
 //    
 int i ;
 for(i=0; icout<" " ;
return 0 ;
}
          ,        (     )      。 vector b(a.begin(),a.begin()+3);       (a.begin()、a.begin()+3)               +3       。(a.begin(),a.end())                     。
                 ,   ,                ,            : vector::iterator。           ,           。
                          : 
    //    
    vector<int>::iterator t ;
    for(t=a.begin(); t!=a.end(); t++)
        cout<" " ;

*tはポインタの間接アクセス形式であり、tが指す要素値にアクセスすることを意味する.ベクトルの基本操作:
1>. a.size()                 //          
2>. a.empty()                //        
3>. a.clear()                //        
4>.    a = b ;            // b     a   
5>.      ==、!=、>、>=、//a   b    ,      1
6>.    - insert
    ①、a.insert(a.begin(),1000);// 1000     a      
    ②、a.insert(a.begin(),3,1000);// 1000            0-2 ( 3   )   
    ③、vector<int> a(5, 1);vector<int> b(10) ;
      b.insert(b.begin(), a.begin(), a.end()) ;// a.begin(), a.end()          b.begin() 
7>.    - erase
        ①、 b.erase(b.begin());//          
        ②、 b.erase(b.begin(), b.begin()+3) ;// (b.begin(), b.begin()+3)       
8>.    - swap
       b.swap(a) ;      //a   b      
      ,          ,       m*n                :
 vector>b(10,vector(5));//    10*5 int     。
                     。                        。
#include
#include
using namespace std ;
int main()
{
 vector<vector<int>>b(10,vector<int>(5,0));//         
 cin>>b[1][1];
 cin>>b[2][2];
 cin>>b[3][3];
 //    
 int m,n;
 for(m=0; m//b.size()        
  {
        for(n=0; n//              
            cout<" " ;
            cout<<"
"
; } return 0; }