VMS Help
CXXLSTD, Algorithms, iter_swap

 *Conan The Librarian

 			   Standard C++	Library
 		 Copyright 1996, Rogue Wave Software, Inc.

 NAME

   iter_swap  - Exchange	values pointed at in two locations

 SYNOPSIS

   #include <algorithm>

   template <class ForwardIterator1, class ForwardIterator2>
   void iter_swap (ForwardIterator1, ForwardIterator2);

 DESCRIPTION

   The iter_swap	algorithm exchanges the	values pointed at by the two
   iterators a and b.

 EXAMPLE

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

   int main ()
    {
     int	d1[] = {6, 7, 8, 9, 10,	1, 2, 3, 4, 5};
      //
      //	Set up a vector.
      //
     vector<int>	v(d1+0,	d1+10);
      //
      //	Output original	vector.
      //
     cout << "For the vector: ";
     copy(v.begin(), v.end(), ostream_iterator<int,char>(cout," "));
      //
      //	Swap the first five elements with the last five	elements.
      //
     swap_ranges(v.begin(), v.begin()+5,	v.begin()+5);
      //
      //	Output result.
      //
     cout << endl << endl
 	  << "Swapping the first 5 elements with the last 5 gives: "
 	  << endl << "	   ";
     copy(v.begin(), v.end(), ostream_iterator<int,char>(cout," "));
      //
      //	Now an example of iter_swap -- swap first and last elements.
      //
      iter_swap(v.begin(), v.end()-1);
      //
      //	Output result.
      //
     cout << endl << endl
 	  << "Swapping the first and last elements gives: "
 	  << endl << "	   ";
     copy(v.begin(), v.end(), ostream_iterator<int,char>(cout," "));
     cout << endl;

     return 0;
    }

   Output :
   For the vector: 6 7 8	9 10 1 2 3 4 5
   Swapping the first five elements with	the last five gives:
       1	2 3 4 5	6 7 8 9	10
   Swapping the first and last elements gives:
       10 2 3 4 5 6 7 8 9 1

 WARNING

   If your compiler does	not support default template parameters, then
   you will need to always supply the Allocator template argument.  For
   instance, you'll have to write :

   vector<int, allocator<int> >

   instead of :

   vector<int>

 SEE ALSO

   Iterators, swap, swap_ranges

 STANDARDS CONFORMANCE
   ANSI X3J16/ISO WG21 Joint C++	Committee
  Close     Help