Partager via


Allocateurs

Les allocateurs sont utilisés par la bibliothèque de modèles Standard pour gérer l'allocation et la libération des magasins d'éléments dans des conteneurs.Tous les conteneurs STL ont un argument template de type allocator<Type>, où Type représente le type de l'élément conteneur.par exemple, la classe vectorielle est déclarée comme suit :

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

La bibliothèque de modèles Standard fournit une implémentation par défaut pour un allocateur.Dans la plupart des cas, l'allocateur par défaut doit être suffisant.Pour plus d'informations sur l'allocateur par défaut, consultez l' allocator Class.

écrire votre propre allocateur

Le utilise par défaut new et delete d'allocateur d'allouer et libérer la mémoire.Si vous souhaitez utiliser une autre méthode d'allocation de mémoire, par exemple l'utilisation de la mémoire partagée, vous devez créer votre propre allocateur.

Tout allocateur utilisé avec des conteneurs STL doit implémenter les définitions de types suivantes :

const_pointer

rebind

const_reference

reference

difference_type

size_type

pointer

value_type

De plus, tout allocateur utilisé avec des conteneurs STL doit implémenter les méthodes suivantes :

Constructeur

deallocate

constructeur de copie

destroy

destructeur

max_size

address

operator==

allocate

operator!=

construct

Pour plus d'informations sur ces définitions de types et méthodes, consultez l' allocator Class.

Voir aussi

Référence

Modèles Standard