unordered_multiset的reserve()函數將容器中的存儲桶數(bucket_count)設置為最適合包含至少n個元素的存儲桶數。
如果n大於當前的bucket_count乘以max_load_factor,則該容器的bucket_count會增加,並強製進行重新哈希處理。
如果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;
// container invoked
// it reverse the values
j.reserve(5);
// set the values of the container
j.insert(5);
j.insert(6);
j.insert(7);
cout << "The values in unordered_multiset :";
for (const int& x : j)
cout << " " << x;
return 0;
}
輸出:
The values in unordered_multiset : 7 6 5
示例2:
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_multiset<string> j;
// container invoked
// it reverse the values
j.reserve(5);
// set the values of the container
j.insert("Geeks");
j.insert("forGeeks");
j.insert("GeeksforGeeks");
cout << "The values in unordered_multiset :";
for (const string& x : j)
cout << " " << x;
return 0;
}
輸出:
The values in unordered_multiset : GeeksforGeeks forGeeks Geeks
相關用法
- C++ unordered_map reserve()用法及代碼示例
- C++ unordered_multimap reserve()用法及代碼示例
- C++ unordered_set reserve()用法及代碼示例
注:本文由純淨天空篩選整理自SoumikMondal大神的英文原創作品 unordered_multiset reserve() in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。