Класс freelist

Управляет списком блоков памяти.

Синтаксис

template <std::size_t Sz, class Max>
class freelist : public Max

Параметры

Sz
Число выделяемых элементов в массиве.

Max
Класс max, представляющий максимальное количество элементов, которые необходимо сохранить в свободном списке. Классом max может быть max_none, max_unbounded, max_fixed_size или max_variable_size.

Замечания

Этот шаблон класса управляет списком блоков памяти размера Sz с максимальной длиной списка, определяемого максимальным классом, переданным в Max.

Конструкторы

Конструктор Description
freelist Создает объект типа freelist.

Функции элементов

Функция-член Description
pop Удаляет первый блок памяти из свободного списка.
push Добавляет блок памяти в список.

Требования

Заголовок:<распределители>

Пространство имен: stdext

freelist::freelist

Создает объект типа freelist.

freelist();

Замечания

freelist::p op

Удаляет первый блок памяти из свободного списка.

void *pop();

Возвращаемое значение

Возвращает указатель на блок памяти, удаленный из списка.

Замечания

Функция-член возвращает значение NULL, если список пуст. В противном случае удаляет первый блок памяти из списка.

freelist::p ush

Добавляет блок памяти в список.

bool push(void* ptr);

Параметры

ptr
Указатель на блок памяти, которые необходимо добавить в свободный список.

Возвращаемое значение

true, если функция full класса max возвращает false; в противном случае функция push возвращает false.

Замечания

full Если функция максимального класса возвращается, эта функция-член добавляет falseблок памяти, на который указывает ptr, в голову списка.

См. также

<Распределители>