共用方式為


freelist 類別

管理記憶體區塊的清單。

語法

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

參數

Sz
要配置的陣列元素數目。

Max
max 類別,表示可在可用清單中儲存的元素數量上限。 max 類別可以是 max_nonemax_unboundedmax_fixed_sizemax_variable_size

備註

此類別範本會管理大小 為 Sz 的記憶體區塊清單,其清單長度上限是由傳入 Max 的 max 類別所決定。

建構函式

建構函式 描述
freelist 建構類型 freelist 的物件。

成員函式

成員函數 描述
pop 從可用清單中移除第一個記憶體區塊。
push 將記憶體區塊新增至清單中。

需求

Header:<allocators>

命名空間: stdext

freelist::freelist

建構類型 freelist 的物件。

freelist();

備註

freelist::p op

從可用清單中移除第一個記憶體區塊。

void *pop();

傳回值

傳回從清單中移除之記憶體區塊的指標。

備註

如果清單是空的,則成員函式會傳回 NULL。 否則,會從清單中移除第一個記憶體區塊。

freelist::p ush

將記憶體區塊新增至清單中。

bool push(void* ptr);

參數

ptr
要新增至可用清單的記憶體區塊指標。

傳回值

如果 max 類別的 full 函式傳回 false,即為 true;否則 push 函式會傳回 false

備註

full如果 max 類別的 函式傳false回 ,這個成員函式會將 ptr 指向的記憶體區塊新增至清單的前端。

另請參閱

<allocators>