在C++ STL中的unordered_multiset reserve()方法
reserve() 是 unordered_multiset 中的一个函数,用于设置容器(bucket_count)含有的桶的数量,保证至少容纳n个元素最为适当。
如果n大于当前桶容量乘以最大负载因子,容器的桶容量就会增加,从而强制重排。
如果n比当前桶容量小,则该方法可能没有任何效果。
语法:
void reserve(size_type n);
其中size_type是无符号整数类型。
参数:此方法接受一个必需参数n,它是所请求的最小容量数量。
返回值:它不返回任何值。
下面是用于说明reserve()方法的程序:
示例1:
#include <iostream>
#include <unordered_set>
  
using namespace std;
  
int main()
{
    unordered_multiset<int> j;
  
    // 调用容器并将值倒置
    j.reserve(5);
  
    // 设置容器的值
    j.insert(5);
    j.insert(6);
    j.insert(7);
  
    cout << "unordered_multiset中的值:";
    for (const int& x : j)
        cout << " " << x;
  
    return 0;
}
unordered_multiset中的值:7 6 5 
示例2:
#include <iostream>
#include <unordered_set>
  
using namespace std;
  
int main()
{
    unordered_multiset<string> j;
  
    // 调用容器并将值倒置
    j.reserve(5);
  
    // 设置容器的值
    j.insert("Geeks");
    j.insert("forGeeks");
    j.insert("GeeksforGeeks");
  
    cout << "unordered_multiset中的值:";
    for (const string& x : j)
        cout << " " << x;
  
    return 0;
}
unordered_multiset中的值:GeeksforGeeks forGeeks Geeks```  
极客教程