
- 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++ Unordered_multimap Library - reserve() Function
Description
The C++ function std::unordered_multimap::reserve() sets the number of buckets in the container to the most appropriate to contain at least n elements.
If n is greater than the current bucket_count() * max_load_factor() then the container's bucket count is increased and a rehash is forced and if n is lower than that, the function may have no effect.
Declaration
Following is the declaration for std::unordered_multimap::reserve() function form std::unordered_map() header.
C++11
void reserve(size_type n);
Parameters
n − New capacity of the container.
Return value
None
Time complexity
Linear i.e. O(n) in average case.
Quadratic i.e. O(n2) in worst case.
Example
The following example shows the usage of std::unordered_multimap::reserve() function.
#include <iostream> #include <unordered_map> using namespace std; int main(void) { unordered_multimap<char, int> umm; cout << "Initial bucket count = " << umm.bucket_count() << endl; umm.reserve(5); cout << "Bucket count after reserve = " << umm.bucket_count() << endl; return 0; }
Let us compile and run the above program, this will produce the following result −
Initial bucket count = 11 Bucket count after reserve = 5
unordered_map.htm
Advertisements