unordered_set :: reserve()方法是C++ STL中的内置函数,用于请求对unordered_set进行容量更改。它将容器中的存储桶数设置为至少包含n个元素。如果n大于当前的bucket_count乘以max_load_factor ,则增加容器的bucket_count并强制进行重新哈希。如果n小于bucket_count,则该函数对其无效。
语法:
unordered_set_name.reserve(size_type n)
参数:该函数接受单个强制性参数n ,该参数将容器中的存储桶数(bucket_count)设置为最适合包含至少n个元素的存储桶。
返回值:该函数不返回任何内容。
下面的程序说明了unordered_set :: reserve()函数:
程序1:
// C++ program to illustrate
// the unordered_set.reserve()
#include
#include
#include
using namespace std;
int main()
{
// Declaration of unordered_set
unordered_set 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;
}
输出:
geeksforgeeks users geeks for
程式2:
// C++ program to illustrate
// the unordered_set.reserve()
#include
#include
#include
using namespace std;
int main()
{
// Declaration of unordered_set
unordered_set 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;
}
输出:
for geeks
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。