hash_map::max_load_factor (STL/CLR)
Ottiene o imposta elementi massimo per bucket.
float max_load_factor();
void max_load_factor(float new_factor);
Parametri
- new_factor
Nuovo fattore di carico massimo da archiviare.
Note
La prima funzione membro restituisce il fattore di carico massimo archiviato corrente.La utilizzate per determinare la dimensione massima media del bucket.
La seconda funzione membro sostituisce il fattore di carico massimo dell'archivio con new_factor.Rimaneggiare automatico non viene eseguito fino a un'istruzione successiva.
Esempio
// cliext_hash_map_max_load_factor.cpp
// compile with: /clr
#include <cliext/hash_map>
typedef cliext::hash_map<wchar_t, int> Myhash_map;
int main()
{
Myhash_map c1 = gcnew Myhash_map;
c1.insert(Myhash_map::make_value(L'a', 1));
c1.insert(Myhash_map::make_value(L'b', 2));
c1.insert(Myhash_map::make_value(L'c', 3));
// display contents " [a 1] [b 2] [c 3]"
for each (Myhash_map::value_type elem in c1)
System::Console::Write(" [{0} {1}]", elem->first, elem->second);
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);
}
Requisiti
intestazione: <cliext/hash_map>
Cliext diSpazio dei nomi:
Vedere anche
Riferimenti
hash_map::bucket_count (STL/CLR)