/* The following code example is taken from the book * "The C++ Standard Library - A Tutorial and Reference" * by Nicolai M. Josuttis, Addison-Wesley, 1999 * * (C) Copyright Nicolai M. Josuttis 1999. * Permission to copy, use, modify, sell and distribute this software * is granted provided this copyright notice appears in all copies. * This software is provided "as is" without express or implied * warranty, and with no claim as to its suitability for any purpose. */ #include #include #include #include #include "print.hpp" using namespace std; int main() { set coll; // create insert iterator for coll // - inconvenient way insert_iterator > iter(coll,coll.begin()); // insert elements with the usual iterator interface *iter = 1; iter++; *iter = 2; iter++; *iter = 3; PRINT_ELEMENTS(coll,"set: "); // create inserter and insert elements // - convenient way inserter(coll,coll.end()) = 44; inserter(coll,coll.end()) = 55; PRINT_ELEMENTS(coll,"set: "); // use inserter to insert all elements into a list list coll2; copy (coll.begin(), coll.end(), // source inserter(coll2,coll2.begin())); // destination PRINT_ELEMENTS(coll2,"list: "); // use inserter to reinsert all elements into the list before the second element copy (coll.begin(), coll.end(), // source inserter(coll2,++coll2.begin())); // destination PRINT_ELEMENTS(coll2,"list: "); }