Sdílet prostřednictvím


CLocalHeap – třída

Tato třída implementuje IAtlMemMgr pomocí funkcí místní haldy Win32.

Důležité

Tuto třídu a její členy nelze použít v aplikacích, které se spouští v prostředí Windows Runtime.

Syntaxe

class CLocalHeap : public IAtlMemMgr

Členové

Veřejné metody

Název Popis
CLocalHeap::Přidělení Voláním této metody přidělte blok paměti.
CLocalHeap::Free Voláním této metody uvolníte blok paměti přidělený tímto správcem paměti.
CLocalHeap::GetSize Voláním této metody získáte přidělenou velikost bloku paměti přiděleného tímto správcem paměti.
CLocalHeap::Reallocate Voláním této metody relokuje paměť přidělenou tímto správcem paměti.

Poznámky

CLocalHeap implementuje funkce přidělování paměti pomocí funkcí místní haldy Win32.

Poznámka:

Funkce místní haldy jsou pomalejší než jiné funkce správy paměti a neposkytují tolik funkcí. Nové aplikace by proto měly používat funkce haldy. Jsou k dispozici ve třídě CWin32Heap .

Příklad

Podívejte se na příklad pro IAtlMemMgr.

Hierarchie dědičnosti

IAtlMemMgr

CLocalHeap

Požadavky

Hlavička: atlmem.h

CLocalHeap::Přidělení

Voláním této metody přidělte blok paměti.

virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();

Parametry

nBajty
Požadovaný počet bajtů v novém bloku paměti.

Návratová hodnota

Vrátí ukazatel na začátek nově přiděleného bloku paměti.

Poznámky

Volání CLocalHeap::Free nebo CLocalHeap::Reallocate uvolnit paměť přidělenou touto metodou.

Implementováno pomocí LocalAlloc s parametrem příznaku LMEM_FIXED.

CLocalHeap::Free

Voláním této metody uvolníte blok paměti přidělený tímto správcem paměti.

virtual void Free(void* p) throw();

Parametry

p
Ukazatel na paměť dříve přidělený tímto správcem paměti. NULL je platná hodnota a nic nedělá.

Poznámky

Implementováno pomocí LocalFree.

CLocalHeap::GetSize

Voláním této metody získáte přidělenou velikost bloku paměti přiděleného tímto správcem paměti.

virtual size_t GetSize(void* p) throw();

Parametry

p
Ukazatel na paměť dříve přidělený tímto správcem paměti.

Návratová hodnota

Vrátí velikost přiděleného bloku paměti v bajtech.

Poznámky

Implementováno pomocí localSize.

CLocalHeap::Reallocate

Voláním této metody relokuje paměť přidělenou tímto správcem paměti.

virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();

Parametry

p
Ukazatel na paměť dříve přidělený tímto správcem paměti.

nBajty
Požadovaný počet bajtů v novém bloku paměti.

Návratová hodnota

Vrátí ukazatel na začátek nově přiděleného bloku paměti.

Poznámky

Volání CLocalHeap::Free uvolnit paměť přidělenou touto metodou.

Implementováno pomocí LocalReAlloc.

Viz také

Přehled třídy
CComHeap – třída
CWin32Heap – třída
CGlobalHeap – třída
CCRTHeap – třída
IAtlMemMgr – třída