iterator

    技术2025-09-13  107

    1

    ostream_iterator<type>(stream_object, "seperator"), 配合诸多算法使用。 type是指插入到stream_object的对象类型。

     

    例如

    vector<string> vs;

    vs.push_back(),

    vs.push_back(),

    vs.push_back(),

    vs.push_back()

     

    copy(vs.begin(), vs.end(), ostream_iterator<string>(cout, "/n"));

    含义是将vs中的字符串, 逐行输出到cout。

     

     

    2

    back_inserter, front_inserter的参数是容器。 将迭代器的赋值操作改为插入操作

    int main( ) { using namespace std; int i; vector<int> vec; for ( i = 0 ; i < 3 ; ++i ) { vec.push_back ( i ); } vector <int>::iterator vIter; cout << "The initial vector vec is: ( "; for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++) cout << *vIter << " "; cout << ")." << endl; // Insertions can be done with template function back_insert_iterator<vector<int> > backiter ( vec ); *backiter = 30; backiter++; *backiter = 40; // Alternatively, insertions can be done with the // back_insert_iterator member function back_inserter ( vec ) = 500; back_inserter ( vec ) = 600; cout << "After the insertions, the vector vec is: ( "; for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++ ) cout << *vIter << " "; cout << ")." << endl; } The initial vector vec is: ( 0 1 2 ). After the insertions, the vector vec is: ( 0 1 2 30 40 500 600 ).

    最新回复(0)