Export (0) Print
Expand All

hash_set::max_load_factor (STL/CLR)

Gets or sets the maximum elements per bucket.

    float max_load_factor();
    void max_load_factor(float new_factor);

new_factor

New maximum load factor to store.

The first member function returns the current stored maximum load factor. You use it to determine the maximum average bucket size.

The second member function replaces the store maximum load factor with new_factor. No automatic rehashing occurs until a subsequent insert.

// cliext_hash_set_max_load_factor.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

Header: <cliext/hash_set>

Namespace: cliext

Community Additions

ADD
Show:
© 2015 Microsoft