Skip to content
Related Articles

Related Articles

unordered_set reserve() function in C++ STL
  • Difficulty Level : Basic
  • Last Updated : 28 Sep, 2018

The unordered_set::reserve() method is a builtin function in C++ STL which is used to request capacity change of unordered_set. It sets the number of buckets in the container to contain at least n elements. If n is greater than the current bucket_count multiplied by the max_load_factor, the container’s bucket_count is increased and a rehash is forced. If n is lower than the bucket_count, then the function has no effect on it.

Syntax:

unordered_set_name.reserve(size_type n)

Parameter: The function accepts a single mandatory parameter n which sets the number of buckets in the container (bucket_count) to the most appropriate to contain at least n elements.

Return Value: This function doesn’t returns anything.

Below programs illustrate the unordered_set::reserve() function:



Program 1:




// C++ program to illustrate
// the unordered_set.reserve()
#include <iostream>
#include <string>
#include <unordered_set>
  
using namespace std;
  
int main()
{
    // Declaration of unordered_set
    unordered_set<string> us;
  
    us.reserve(3);
  
    us.insert("geeks");
    us.insert("for");
    us.insert("geeks");
    us.insert("users");
    us.insert("geeksforgeeks");
  
    for (auto it = us.begin(); it != us.end(); it++) {
        cout << *it << " ";
    }
  
    return 0;
}


Output:

geeksforgeeks users geeks for

Program 2:




// C++ program to illustrate
// the unordered_set.reserve()
#include <iostream>
#include <string>
#include <unordered_set>
  
using namespace std;
  
int main()
{
    // Declaration of unordered_set
    unordered_set<string> us;
  
    us.reserve(0);
  
    us.insert("geeks");
    us.insert("for");
    us.insert("geeks");
  
    for (auto it = us.begin(); it != us.end(); it++) {
        cout << *it << " ";
    }
  
    return 0;
}


Output:

for geeks

Attention reader! Don’t stop learning now. Get hold of all the important C++ Foundation and STL concepts with the C++ Foundation and STL courses at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up
Recommended Articles
Page :