Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Klasse implementiert IAtlMemMgr mithilfe der CRT-Heapfunktionen.
Syntax
class CCRTHeap : public IAtlMemMgr
Member
Öffentliche Methoden
| Name | Beschreibung |
|---|---|
| CCRTHeap::Zuweisung | Rufen Sie diese Methode auf, um einen Speicherblock zu belegen. |
| CCRTHeap::Free | Rufen Sie diese Methode auf, um einen Speicherblock freizugeben, der von diesem Speicher-Manager zugewiesen wurde. |
| CCRTHeap::GetSize | Rufen Sie diese Methode auf, um die zugewiesene Größe eines Speicherblocks abzurufen, der von diesem Speicher-Manager zugewiesen wurde. |
| CCRTHeap::Reallocate | Rufen Sie diese Methode auf, um den von diesem Speicher-Manager zugeordneten Arbeitsspeicher neu zuzuordnen. |
Hinweise
CCRTHeap implementiert Speicherzuweisungsfunktionen mithilfe der CRT-Heapfunktionen, einschließlich Malloc, free, realloc und _msize.
Beispiel
Sehen Sie sich das Beispiel für IAtlMemMgr an.
Vererbungshierarchie
IAtlMemMgr
CCRTHeap
Anforderungen
Kopfzeile: atlmem.h
CCRTHeap::Zuweisung
Rufen Sie diese Methode auf, um einen Speicherblock zu belegen.
virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();
Parameter
nBytes
Die angeforderte Anzahl von Bytes im neuen Speicherblock.
Rückgabewert
Gibt einen Zeiger auf den Anfang des neu belegten Speicherblocks zurück.
Hinweise
Rufen Sie CCRTHeap::Free oder CCRTHeap::Reallocate auf , um den von dieser Methode zugewiesenen Speicher freizugeben.
Implementiert mithilfe von Malloc.
CCRTHeap::Free
Rufen Sie diese Methode auf, um einen Speicherblock freizugeben, der von diesem Speicher-Manager zugewiesen wurde.
virtual void Free(void* p) throw();
Parameter
p
Ein Zeiger auf den Arbeitsspeicher, der zuvor von diesem Speicher-Manager zugeordnet wurde. NULL ist ein gültiger Wert und führt nichts aus.
Hinweise
CCRTHeap::GetSize
Rufen Sie diese Methode auf, um die zugewiesene Größe eines Speicherblocks abzurufen, der von diesem Speicher-Manager zugewiesen wurde.
virtual size_t GetSize(void* p) throw();
Parameter
p
Ein Zeiger auf den Arbeitsspeicher, der zuvor von diesem Speicher-Manager zugeordnet wurde.
Rückgabewert
Gibt die Größe des zugeordneten Speicherblocks in Bytes zurück.
Hinweise
Implementiert mithilfe von _msize.
CCRTHeap::Reallocate
Rufen Sie diese Methode auf, um den von diesem Speicher-Manager zugeordneten Arbeitsspeicher neu zuzuordnen.
virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();
Parameter
p
Ein Zeiger auf den Arbeitsspeicher, der zuvor von diesem Speicher-Manager zugeordnet wurde.
nBytes
Die angeforderte Anzahl von Bytes im neuen Speicherblock.
Rückgabewert
Gibt einen Zeiger auf den Anfang des neu belegten Speicherblocks zurück.
Hinweise
Rufen Sie CCRTHeap::Free auf, um den von dieser Methode zugewiesenen Speicher freizugeben. Implementiert mithilfe von "realloc".
Siehe auch
Klassenübersicht
CComHeap-Klasse
CWin32Heap-Klasse
CLocalHeap-Klasse
CGlobalHeap-Klasse
IAtlMemMgr-Klasse