Open In App

unordered_set swap() in C++ STL

The swap() method of “unordered_set” swaps the contents of two containers. It is public member function. This function:

Syntax:



void swap(unordered_set &another_unordered_set);

Parameters: It receives another_unordered_set container object of the same type as this container with which it is to be swapped.

Returns: It does not return any value.



Below program illustrate the unordered_set swap() function :-

Example 1:




#include <iostream>
#include <string>
#include <unordered_set>
  
using namespace std;
  
int main()
{
  
    // sets the values in two container
    unordered_set<string>
        first = { "FOR GEEKS" },
        second = { "GEEKS" };
  
    // before swap values
    cout << "before swap :- \n";
  
    cout << "1st container : ";
    for (const string& x : first)
        cout << x << endl;
  
    cout << "2nd container : ";
    for (const string& x : second)
        cout << x << endl;
  
    // call swap
  
    first.swap(second);
  
    // after swap values
    cout << "\nafter swap :- \n";
  
    // displaying 1st container
    cout << "1st container : ";
    for (const string& x : first)
        cout << x << endl;
  
    // displaying 2nd container
    cout << "2nd container : ";
    for (const string& x : second)
        cout << x << endl;
  
    return 0;
}

Output:
before swap :- 
1st container : FOR GEEKS
2nd container : GEEKS

after swap :- 
1st container : GEEKS
2nd container : FOR GEEKS

Example 2:




#include <iostream>
#include <string>
#include <unordered_set>
  
using namespace std;
  
int main()
{
  
    // sets the values in two container
    unordered_set<int>
        first = { 1, 2, 3 },
        second = { 4, 5, 6 };
  
    // before swap values
    cout << "before swap :- \n";
  
    cout << "1st container : ";
    for (const int& x : first)
        cout << x << " ";
    cout << endl;
  
    cout << "2nd container : ";
    for (const int& x : second)
        cout << x << " ";
    cout << endl;
  
    // call swap
  
    first.swap(second);
  
    // after swap values
    cout << "\nafter swap :- \n";
  
    // displaying 1st container
    cout << "1st container : ";
    for (const int& x : first)
        cout << x << " ";
    cout << endl;
  
    // displaying 2nd container
    cout << "2nd container : ";
    for (const int& x : second)
        cout << x << " ";
    cout << endl;
  
    return 0;
}

Output:
before swap :- 
1st container : 3 2 1 
2nd container : 6 5 4 

after swap :- 
1st container : 6 5 4 
2nd container : 3 2 1

Article Tags :
C++