STL_Algorithm1: Fill, Fill_n, Generate, Generate_n

#include<iostream>

using std::cout;

using std::endl;

#include<algorithm>

#include<vector>

#include<iterator>

 

char nextLetter();

 

int main()

{

    std::vector< char > chars( 10 );

    std::ostream_iterator< char > outputIt( cout, " " );

 

    std::fill( chars.begin(), chars.end(), '5' );

 

    cout<<"Vector chars after filling with 5s:/n";

    std::copy( chars.begin(), chars.end(), outputIt );

 

    std::fill_n( chars.begin(), 5, 'A' );

 

    cout<< "/n/nVector chars after filling five elements"

        <<" with As:/n";

    std::copy( chars.begin(), chars.end(), outputIt );

 

    std::generate( chars.begin(), chars.end(), nextLetter );

 

    cout<<"/n/nVector chars after generating letters A-J:/n";

    std::copy( chars.begin(), chars.end(), outputIt );

 

    std::generate_n( chars.begin(), 5, nextLetter );

 

    cout<<"/n/nVector chars after generating K-O for the"

        <<" first five elements:/n";

    std::copy( chars.begin(), chars.end(), outputIt );

 

    cout<<endl;

 

    return 0;

}

 

char nextLetter()

{

    static char letter = 'A';

    return letter++;

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章