Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Gère une liste de blocs de mémoire.
Syntaxe
template <std::size_t Sz, class Max>
class freelist : public Max
Paramètres
Sz
Nombre d’éléments du tableau à allouer.
Max
Classe max représentant le nombre maximal d’éléments à stocker dans la liste de libération. La classe max peut être max_none, max_unbounded, max_fixed_size oumax_variable_size.
Notes
Ce modèle de classe gère une liste de blocs de mémoire de taille Sz avec la longueur maximale de la liste déterminée par la classe maximale passée dans Max.
Constructeurs
| Constructeur | Descriptif |
|---|---|
| freelist | Construit un objet de type freelist. |
Fonctions Membre
| Fonction membre | Descriptif |
|---|---|
| pop | Supprime le premier bloc de mémoire de la liste de libération. |
| push | Ajoute un bloc de mémoire à la liste. |
Spécifications
Header :<allocators>
Espace de noms : stdext
freelist ::freelist
Construit un objet de type freelist.
freelist();
freelist ::p op
Supprime le premier bloc de mémoire de la liste de libération.
void *pop();
Valeur de retour
Retourne un pointeur vers le bloc de mémoire supprimé de la liste.
Notes
La fonction membre retourne NULL si la liste est vide. Sinon, elle supprime le premier bloc de mémoire de la liste.
freelist ::p ush
Ajoute un bloc de mémoire à la liste.
bool push(void* ptr);
Paramètres
ptr
Pointeur vers le bloc de mémoire à ajouter à la liste de libération.
Valeur de retour
true si la fonction full de la classe max retourne false ; sinon, la fonction push retourne false.
Notes
Si la full fonction de la classe max retourne false, cette fonction membre ajoute le bloc de mémoire pointé par ptr à la tête de la liste.