MakeAllocator – třída

Podporuje infrastrukturu knihovny WRL a není určená k použití přímo z vašeho kódu.

Syntaxe

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>;

Parametry

T
Název typu.

hasWeakReferenceSupport
true přidělení paměti pro objekt, který podporuje slabé odkazy; false přidělení paměti pro objekt, který nepodporuje slabé odkazy.

Poznámky

Přidělí paměť pro aktivovatelnou třídu s podporou slabých odkazů nebo bez něj.

MakeAllocator Přepište třídu pro implementaci uživatelem definovaného modelu přidělování paměti.

MakeAllocator se obvykle používá k zabránění nevracení paměti, pokud objekt vyvolá během sestavování.

Členové

Veřejné konstruktory

Název Popis
MakeAllocator::MakeAllocator Inicializuje novou instanci MakeAllocator třídy.
MakeAllocator::~MakeAllocator Deinicializuje aktuální instanci MakeAllocator třídy.

Veřejné metody

Název Popis
MakeAllocator::Přidělení Přidělí paměť a přidruží ji k aktuálnímu MakeAllocator objektu.
MakeAllocator::D etach Disassociuje paměť přidělenou metodou Allocate z aktuálního MakeAllocator objektu.

Hierarchie dědičnosti

MakeAllocator

Požadavky

Hlavička: implements.h

Obor názvů: Microsoft::WRL::D etails

MakeAllocator::Přidělení

Podporuje infrastrukturu knihovny WRL a není určená k použití přímo z vašeho kódu.

__forceinline void* Allocate();

Návratová hodnota

V případě úspěchu ukazatel na přidělenou paměť; v opačném případě . nullptr

Poznámky

Přidělí paměť a přidruží ji k aktuálnímu MakeAllocator objektu.

Velikost přidělené paměti je velikost typu určeného aktuálním MakeAllocator parametrem šablony.

Vývojář musí přepsat pouze metodu Allocate() implementace jiného modelu přidělování paměti.

MakeAllocator::D etach

Podporuje infrastrukturu knihovny WRL a není určená k použití přímo z vašeho kódu.

__forceinline void Detach();

Poznámky

Disassociuje paměť přidělenou metodou Allocate z aktuálního MakeAllocator objektu.

Pokud voláte Detach(), zodpovídáte za odstranění paměti poskytované metodou Allocate .

MakeAllocator::MakeAllocator

Podporuje infrastrukturu knihovny WRL a není určená k použití přímo z vašeho kódu.

MakeAllocator();

Poznámky

Inicializuje novou instanci MakeAllocator třídy.

MakeAllocator::~MakeAllocator

Podporuje infrastrukturu knihovny WRL a není určená k použití přímo z vašeho kódu.

~MakeAllocator();

Poznámky

Deinicializuje aktuální instanci MakeAllocator třídy.

Tento destruktor také v případě potřeby odstraní základní přidělenou paměť.