支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。
語法
template<
typename T,
bool hasWeakReferenceSupport =
!__is_base_of(RuntimeClassFlags<InhibitWeakReference>,
T)
>
class MakeAllocator;
template<typename T>
class MakeAllocator<T, false>;
template<typename T>
class MakeAllocator<T, true>;
參數
T
類型名稱。
hasWeakReferenceSupport
true 為支援弱式參考的物件配置記憶體; false 為不支援弱式參考的物件配置記憶體。
備註
為可啟動的類別配置記憶體,且具有或不含弱式參考支援。
覆寫 類別 MakeAllocator 以實作使用者定義的記憶體配置模型。
MakeAllocator 在建構期間擲回物件時,通常會用來防止記憶體流失。
成員
公用建構函式
| 名稱 | 描述 |
|---|---|
| MakeAllocator::MakeAllocator | 初始化 MakeAllocator 類別的新執行個體。 |
| MakeAllocator::~MakeAllocator | 將類別的 MakeAllocator 目前實例取消初始化。 |
公用方法
| 名稱 | 描述 |
|---|---|
| MakeAllocator::Allocate | 配置記憶體,並將它與目前的 MakeAllocator 對象產生關聯。 |
| MakeAllocator::D etach | 將 Allocate 方法所配置的記憶體與目前MakeAllocator物件解除關聯。 |
繼承階層架構
MakeAllocator
需求
標頭: implements.h
命名空間: Microsoft::WRL::D etails
MakeAllocator::Allocate
支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。
__forceinline void* Allocate();
傳回值
如果成功,則為已配置記憶體的指標;否則為 nullptr。
備註
配置記憶體,並將它與目前的 MakeAllocator 對象產生關聯。
配置記憶體的大小是目前 MakeAllocator 範本參數所指定的類型大小。
開發人員只需要 Allocate() 覆寫 方法來實作不同的記憶體配置模型。
MakeAllocator::D etach
支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。
__forceinline void Detach();
備註
將 Allocate 方法所配置的記憶體與目前MakeAllocator物件解除關聯。
如果您呼叫 Detach(),您必須負責刪除 方法所提供的 Allocate 記憶體。
MakeAllocator::MakeAllocator
支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。
MakeAllocator();
備註
初始化 MakeAllocator 類別的新執行個體。
MakeAllocator::~MakeAllocator
支援 WRL 基礎結構,並不適合直接從您的程式代碼使用。
~MakeAllocator();
備註
將類別的 MakeAllocator 目前實例取消初始化。
如有必要,這個解構函式也會刪除基礎配置的記憶體。