Compartir a través de


Asignadores

La biblioteca de plantillas estándar utilizan los asignadores para controlar la asignación y la desasignación de elementos almacena en contenedores.Todos los contenedores STL tienen un argumento de plantilla de **allocator<Type>**escriba, donde Type representa el tipo del elemento contenedor.Por ejemplo, se declara la clase vector como sigue:

template <
    class Type,
    class Allocator = allocator<Type>
>
class vector

La biblioteca de plantillas estándar proporciona una implementación predeterminada de un asignador.en la mayoría de los casos, este asignador predeterminado debe ser suficiente.Para obtener más información sobre el asignador predeterminado, vea allocator Class.

Escribir poseer el asignador

El asignador predeterminado utiliza new y delete para asignar y para la desasignación de memoria.Si desea utilizar un método diferente de asignación de memoria, como utilizar memoria compartida, después se debe crear dispone del asignador.

Cualquier asignador utilizado con los contenedores STL debe implementar las definiciones de tipo siguiente:

const_pointer

rebind

const_reference

reference

difference_type

size_type

pointer

value_type

Además, cualquier asignador utilizado con los contenedores STL debe implementar los métodos siguientes:

Constructor

deallocate

Constructor de copia

destroy

Un destructor

max_size

address

operator==

allocate

operator!=

construct

Para obtener más información sobre estas definiciones de tipos y métodos, vea allocator Class.

Vea también

Referencia

Biblioteca de plantillas estándar