Standard C++ Library Class Reference
two ranges [first, last) and [first2, first2 + (last1 - first1)) overlap.
Example
//
// swap.cpp
//
 #include <vector>
 #include <algorithm>
 int main()
 {
 int d1[] = {6, 7, 8, 9, 10, 1, 2, 3, 4, 5};
 // Set up a vector
 vector<int> v(d1,d1 + 10);
 // Output original vector
 cout << "For the vector: ";
 copy(v.begin(),v.end(),ostream_iterator<int>(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 five elements "
 << "with the last five gives: "
 << endl << " ";
 copy(v.begin(),v.end(),ostream_iterator<int>(cout," "));
 return 0;
 }
Output :
For the vector: 6 7 8 9 10 1 2 3 4 5
Swaping the first five elements with the last five gives:
 1 2 3 4 5 6 7 8 9 10
Swaping 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, you need to always supply the
Allocator template argument. For instance, you will need to write :
vector<int, allocator>
instead of :
vector<int>










