Share via


CLocalHeap-klasse

Opmerking

De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Deze klasse implementeert IAtlMemMgr met behulp van de lokale Heap-functies van Win32.

Belangrijk

Deze klasse en de bijbehorende leden kunnen niet worden gebruikt in toepassingen die worden uitgevoerd in Windows Runtime.

Syntaxis

class CLocalHeap : public IAtlMemMgr

Leden

Openbare methoden

Naam Description
CLocalHeap::Toewijzen Roep deze methode aan om een blok geheugen toe te wijzen.
CLocalHeap::Free Roep deze methode aan om een blok geheugen vrij te maken dat door deze geheugenbeheerder is toegewezen.
CLocalHeap::GetSize Roep deze methode aan om de toegewezen grootte op te halen van een geheugenblok dat door deze geheugenbeheerder is toegewezen.
CLocalHeap::Reallocate Roep deze methode aan om geheugen dat door deze geheugenbeheerder is toegewezen, opnieuw toe te wijzen.

Opmerkingen

CLocalHeap implementeert geheugentoewijzingsfuncties met behulp van de lokale Heap-functies van Win32.

Opmerking

De lokale heap-functies zijn langzamer dan andere geheugenbeheerfuncties en bieden niet zoveel functies. Daarom moeten nieuwe toepassingen gebruikmaken van de heap-functies. Deze zijn beschikbaar in de klasse CWin32Heap .

Example

Zie het voorbeeld voor IAtlMemMgr.

Overnamehiërarchie

IAtlMemMgr

CLocalHeap

Requirements

Koptekst: atlmem.h

CLocalHeap::Toewijzen

Roep deze methode aan om een blok geheugen toe te wijzen.

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

Parameterwaarden

nBytes
Het aangevraagde aantal bytes in het nieuwe geheugenblok.

Retourwaarde

Retourneert een aanwijzer naar het begin van het zojuist toegewezen geheugenblok.

Opmerkingen

Roep CLocalHeap::Free of CLocalHeap::Reallocate aan om het geheugen vrij te maken dat door deze methode is toegewezen.

Geïmplementeerd met behulp van LocalAlloc met een vlagparameter van LMEM_FIXED.

CLocalHeap::Free

Roep deze methode aan om een blok geheugen vrij te maken dat door deze geheugenbeheerder is toegewezen.

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

Parameterwaarden

p
Aanwijzer naar geheugen dat eerder door deze geheugenbeheerder is toegewezen. NULL is een geldige waarde en doet niets.

Opmerkingen

Geïmplementeerd met LocalFree.

CLocalHeap::GetSize

Roep deze methode aan om de toegewezen grootte op te halen van een geheugenblok dat door deze geheugenbeheerder is toegewezen.

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

Parameterwaarden

p
Aanwijzer naar geheugen dat eerder door deze geheugenbeheerder is toegewezen.

Retourwaarde

Retourneert de grootte van het toegewezen geheugenblok in bytes.

Opmerkingen

Geïmplementeerd met LocalSize.

CLocalHeap::Reallocate

Roep deze methode aan om geheugen dat door deze geheugenbeheerder is toegewezen, opnieuw toe te wijzen.

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

Parameterwaarden

p
Aanwijzer naar geheugen dat eerder door deze geheugenbeheerder is toegewezen.

nBytes
Het aangevraagde aantal bytes in het nieuwe geheugenblok.

Retourwaarde

Retourneert een aanwijzer naar het begin van het zojuist toegewezen geheugenblok.

Opmerkingen

Roep CLocalHeap::Gratis aan om het geheugen vrij te maken dat door deze methode is toegewezen.

Geïmplementeerd met LocalReAlloc.

Zie ook

Overzicht van klassen
CComHeap-klasse
CWin32Heap-klasse
CGlobalHeap-klasse
CCRTHeap-klasse
IAtlMemMgr-klasse