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