
- The C Standard Library
- The C Standard Library
- The C++ Standard Library
- C++ Library - Home
- C++ Library - <fstream>
- C++ Library - <iomanip>
- C++ Library - <ios>
- C++ Library - <iosfwd>
- C++ Library - <iostream>
- C++ Library - <istream>
- C++ Library - <ostream>
- C++ Library - <sstream>
- C++ Library - <streambuf>
- C++ Library - <atomic>
- C++ Library - <complex>
- C++ Library - <exception>
- C++ Library - <functional>
- C++ Library - <limits>
- C++ Library - <locale>
- C++ Library - <memory>
- C++ Library - <new>
- C++ Library - <numeric>
- C++ Library - <regex>
- C++ Library - <stdexcept>
- C++ Library - <string>
- C++ Library - <thread>
- C++ Library - <tuple>
- C++ Library - <typeinfo>
- C++ Library - <utility>
- C++ Library - <valarray>
- The C++ STL Library
- C++ Library - <array>
- C++ Library - <bitset>
- C++ Library - <deque>
- C++ Library - <forward_list>
- C++ Library - <list>
- C++ Library - <map>
- C++ Library - <queue>
- C++ Library - <set>
- C++ Library - <stack>
- C++ Library - <unordered_map>
- C++ Library - <unordered_set>
- C++ Library - <vector>
- C++ Library - <algorithm>
- C++ Library - <iterator>
- C++ Programming Resources
- C++ Programming Tutorial
- C++ Useful Resources
- C++ Discussion
C++ Algorithm Library - iter_swap() Function
Description
The C++ function std::algorithm::iter_swap() exchange values of objects pointed by two iterators. It uses function swap (unqualified) to exchange the elements.
Declaration
Following is the declaration for std::algorithm::iter_swap() function form std::algorithm header.
C++98
template <class ForwardIterator1, class ForwardIterator2> void iter_swap (ForwardIterator1 a, ForwardIterator2 b);
Parameters
a − First forward iterator object.
b − Second forward iterator object.
Return value
None
Exceptions
Throws exception if swap function throws an exception.
Please note that invalid parameters cause undefined behavior.
Time complexity
Constant.
Example
The following example shows the usage of std::algorithm::iter_swap() function.
#include <iostream> #include <vector> #include <algorithm> using namespace std; int main(void) { vector<int> v1 = {1, 2, 3, 4, 5}; vector<int> v2 = {10, 20, 30, 40, 50}; iter_swap(v1.begin(), v2.begin()); iter_swap(v1.begin() + 1, v2.begin() + 2); cout << "Vector v2 contains following elements" << endl; for (auto it = v2.begin(); it != v2.end(); ++it) cout << *it << endl; return 0; }
Let us compile and run the above program, this will produce the following result −
Vector v2 contains following elements 1 20 2 40 50
algorithm.htm
Advertisements