• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 27, comments - 14, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            C++中的vector使用范例(轉)

            Posted on 2009-09-17 14:21 heeeey 閱讀(355) 評論(0)  編輯 收藏 引用 所屬分類: STL

            1.vector 的數據的存入和輸出:

             

            #include<stdio.h>
            #include
            <vector>
            #include 
            <iostream>

            using namespace std;

            void main()

            {

               
            int i = 0;

                vector
            <int> v;

                
            for( i = 0; i < 10; i++ )

               
            {

                         v.push_back( i );
            //把元素一個一個存入到vector中

               }


                
            /* v.clear()*/ 對存入的數據清空


               
            for( i = 0; i < v.size(); i++ )//v.size() 表示vector存入元素的個數

               
            {

                      cout 
            << v[ i ] << "  "//把每個元素顯示出來

               }


               cont 
            << endl;

            }
             


            注:你也可以用v.begin()和v.end() 來得到vector開始的和結束的元素地址的指針位置。你也可以這樣做:

             

            vector<int>::iterator iter; /*iterator 抽象了指針的絕大部分基本特征*/


            for( iter = v.begin(); iter != v.end(); iter++ ) 

            {
                cout 
            << *iter << endl;
            }



            2. 對于二維vector的定義。

            1)定義一個10個vector元素,并對每個vector符值1-10。

             

            #include<stdio.h>
            #include
            <vector>
            #include 
            <iostream>

            using namespace std;

            void main()
            {
             
            int i = 0, j = 0;

            //定義一個二維的動態數組,有10行,每一行是一個用一個vector存儲這一行的數據。

            //所以每一行的長度是可以變化的。之所以用到vector<int>(0)是對vector初始化,否則不能對vector存入元素。
             vector< vector<int> > Array( 10, vector<int>(0) ); 

            for( j = 0; j < 10; j++ )
             
            {
              
            for ( i = 0; i < 9; i++ )
              
            {
               Array[ j ].push_back( i );
              }

             }


             
            for( j = 0; j < 10; j++ )
             
            {
              
            for( i = 0; i < Array[ j ].size(); i++ )
              
            {
               cout 
            << Array[ j ][ i ] << "  ";
              }

              cout
            << endl;
             }

            }



            2)定義一個行列都是變化的數組。

            #include<stdio.h>
            #include
            <vector>
            #include 
            <iostream>

            using namespace std;

            void main()
            {
             
            int i = 0, j = 0;

             vector
            < vector<int> > Array;
             vector
            < int > line;
             
            for( j = 0; j < 10; j++ )
             
            {
              Array.push_back( line );
            //要對每一個vector初始化,否則不能存入元素。
              for ( i = 0; i < 9; i++ )
              
            {
               Array[ j ].push_back( i );
              }

             }


             
            for( j = 0; j < 10; j++ )
             
            {
              
            for( i = 0; i < Array[ j ].size(); i++ )
              
            {
               cout 
            << Array[ j ][ i ] << "  ";
              }

              cout
            << endl;
             }

            }


            使用 vettor erase 指定元素

            #include "iostream"
            #include 
            "vector"

            using namespace std;

            int   main()
            {
                vector
            <int>   arr;
                arr.push_back(
            6);
                arr.push_back(
            8);
                arr.push_back(
            3);
                arr.push_back(
            8);

                
            for(vector<int>::iterator it=arr.begin(); it!=arr.end(); )
                
            {
                    
            if(* it == 8)
                    
            {
                        it 
            = arr.erase(it);
                    }

                    
            else
                    
            {
                        
            ++it;
                    }

                }


                cout 
            << "After remove 8:\n";

                
            for(vector<int>::iterator it = arr.begin(); it < arr.end(); ++it)
                
            {
                    cout 
            << * it << " ";
                }

                cout 
            << endl;

            }

            国产精品一久久香蕉产线看| 国产精品久久久久久久| 久久人人爽人人爽人人片av高请| av无码久久久久久不卡网站 | 久久成人国产精品免费软件| 漂亮人妻被黑人久久精品| 亚洲精品高清国产一线久久| 亚洲伊人久久成综合人影院 | 久久这里有精品| 99久久伊人精品综合观看| 久久久久久九九99精品| 久久久精品人妻一区二区三区蜜桃| 精品综合久久久久久98| 久久精品成人| 亚洲精品无码久久久| 久久国产精品久久久| 久久精品国产亚洲AV无码麻豆| 99久久精品久久久久久清纯| 777久久精品一区二区三区无码 | 国产精品免费看久久久| 免费精品国产日韩热久久| 婷婷久久综合九色综合98| 久久久久免费看成人影片| 中文字幕无码av激情不卡久久| 国产一级持黄大片99久久| 囯产极品美女高潮无套久久久| 久久这里只有精品18| 香蕉久久久久久狠狠色| 久久99久久成人免费播放| 久久精品中文字幕大胸| 久久久久亚洲AV无码专区桃色| 久久久这里有精品| 亚洲国产精品无码久久久久久曰| 免费国产99久久久香蕉| 国产美女久久精品香蕉69| 国内精品九九久久久精品| 亚洲成av人片不卡无码久久| 国内精品伊人久久久久777| 久久无码一区二区三区少妇| 99久久国产主播综合精品| 91久久精品国产91性色也|