Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at hash_set::rehash (STL/CLR).
Rebuilds the hash table.
Syntax
void rehash();
Remarks
The member function rebuilds the hash table, ensuring that hash_set::load_factor (STL/CLR)() <= hash_set::max_load_factor (STL/CLR). Otherwise, the hash table increases in size only as needed after an insertion. (It never automatically decreases in size.) You use it to adjust the size of the hash table.
Example
// cliext_hash_set_rehash.cpp
// compile with: /clr
#include <cliext/hash_set>
typedef cliext::hash_set<wchar_t> Myhash_set;
int main()
{
Myhash_set c1;
c1.insert(L'a');
c1.insert(L'b');
c1.insert(L'c');
// display initial contents " a b c"
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// inspect current parameters
System::Console::WriteLine("bucket_count() = {0}", c1.bucket_count());
System::Console::WriteLine("load_factor() = {0}", c1.load_factor());
System::Console::WriteLine("max_load_factor() = {0}",
c1.max_load_factor());
System::Console::WriteLine();
// change max_load_factor and redisplay
c1.max_load_factor(0.25f);
System::Console::WriteLine("bucket_count() = {0}", c1.bucket_count());
System::Console::WriteLine("load_factor() = {0}", c1.load_factor());
System::Console::WriteLine("max_load_factor() = {0}",
c1.max_load_factor());
System::Console::WriteLine();
// rehash and redisplay
c1.rehash(100);
System::Console::WriteLine("bucket_count() = {0}", c1.bucket_count());
System::Console::WriteLine("load_factor() = {0}", c1.load_factor());
System::Console::WriteLine("max_load_factor() = {0}",
c1.max_load_factor());
return (0);
}
a b c
bucket_count
() = 16
load_factor
() = 0.1875
max_load_factor
() = 4
bucket_count
() = 16
load_factor
() = 0.1875
max_load_factor
() = 0.25
bucket_count
() = 128
load_factor
() = 0.0234375
max_load_factor
() = 0.25
Requirements
Header: <cliext/hash_set>
Namespace: cliext
See Also
hash_set (STL/CLR)
hash_set::bucket_count (STL/CLR)
hash_set::load_factor (STL/CLR)
hash_set::max_load_factor (STL/CLR)