Alokátory
Allocators používají standardní knihovna šablon pro zpracování přidělování a navracení zpět prvky obchodů v kontejnerech.Všechny STL kontejnery mít šablonu argumentu typu allocator<Type>, kde Type představuje typ elementu kontejneru.Například třída vector je deklarována takto:
template <
class Type,
class Allocator = allocator<Type>
>
class vector
Standardní knihovna šablon obsahuje výchozí implementaci přidělování.Ve většině případů toto přidělování výchozí by měly být dostatečné.Další informace o přidělování výchozí, viz allocator – třída.
Psaní vlastních přidělování
Používá výchozí přidělování new a delete pro přidělení a přidělení paměti.Pokud chcete použít jinou metodu přidělení paměti, například pomocí sdílené paměti, je nutné vytvořit vlastní modul pro přidělování.
Všechny Alokátor používá s STL kontejnery musí implementovat následující definice typu:
const_pointer |
rebind |
const_reference |
reference |
difference_type |
size_type |
pointer |
value_type |
Kromě toho všechny Alokátor používá s STL kontejnery musí implementovat následující metody:
Konstruktor |
deallocate |
Kopírovat konstruktor |
destroy |
Destruktor |
max_size |
address |
operator== |
allocate |
operator!= |
construct |
Další informace o těchto definice typů a metod, viz allocator – třída.