fill_n()

fill_n()は、コンテナの要素のうち指定した数の要素だけに値を入れます。

fill_n()は次の書式で使います。


    #include<algorithm>
    template void fill_n(oiter first, Size n, const T& x);
    

firstは最初の要素の反復子、nは値を入れる要素の数、xは要素に入れる値です。

次の例は、fill_n()を使ってvectorの先頭(v.begin())から3個の要素を値7で再初期化する例です。


    #include <iostream>
    #include <algorithm>
    #include <vector>
    
    using namespace std;
    
    int main(int argc, char* argv[])
    {
       vector< int > v;
       int i;
    
       for(i=0; i<5; i++)
          v.push_back(i);
    
       for(i=0; i<v.size(); i++)
          cout << v[i] << " ";
       cout << endl;
    
       fill_n(v.begin(), 3, 7);
    
       for(i=0; i<v.size(); i++)
          cout << v[i] << " ";
       cout << endl;
    
       return 0;
    }
  

実行結果は次のようになります。


  0 1 2 3 4
  7 7 7 3 4
  

関連項目

fill()

vector


コンテナ目次 C++目次 inserted by FC2 system