max_none 類別
描述 max 類別物件,此物件可將 freelist 物件的長度上限限制為零。
語法
template <std::size_t Max>
class max_none
參數
Max
max 類別,可決定要在 freelist
中儲存的元素數目上限。
成員函式
成員函數 | 描述 |
---|---|
allocated | 遞增已配置的記憶體區塊計數。 |
deallocated | 遞減已配置的記憶體區塊計數。 |
full | 傳回指定是否應該為可用清單新增更多記憶體區塊的值。 |
released | 遞減可用清單上的記憶體區塊計數。 |
saved | 遞增可用清單上的記憶體區塊計數。 |
需求
Header:<allocators>
命名空間: stdext
max_none::allocated
遞增已配置的記憶體區塊計數。
void allocated(std::size_t _Nx = 1);
參數
_Nx
遞增值。
備註
此成員函式不會執行任何動作。 每次 cache_freelist::allocate
成功呼叫運算子 new
之後,都會呼叫它。 自變數 _Nx 是運算子 new
所配置區塊中的記憶體區塊數目。
max_none::d eallocated
遞減已配置的記憶體區塊計數。
void deallocated(std::size_t _Nx = 1);
參數
_Nx
遞增值。
備註
此成員函式不會執行任何動作。 每次 cache_freelist::deallocate
呼叫運算子 delete
之後,都會呼叫此成員函式。 自變數 _Nx 是運算元 delete
解除分配之區塊中的記憶體區塊數目。
max_none::full
傳回指定是否應該為可用清單新增更多記憶體區塊的值。
bool full();
傳回值
此成員函式一律會傳回 true
。
備註
此成員函式會由 cache_freelist::deallocate
呼叫。 如果呼叫傳 true
回 , deallocate
請將記憶體區塊放在可用清單中;如果傳回 false
, deallocate
則會呼叫 運算符 delete
來解除分配區塊。
max_none::released
遞減可用清單上的記憶體區塊計數。
void released();
備註
此成員函式不會執行任何動作。 每當 cache_freelist::allocate
從可用清單中移除記憶體區塊時,都會呼叫目前 max 類別的 released
成員函式。
max_none::saved
遞增可用清單上的記憶體區塊計數。
void saved();
備註
此成員函式不會執行任何動作。 每當 cache_freelist::deallocate
將記憶體區塊放到可用清單上時,都會呼叫它。