Klasa CCRTHeap
Ta klasa implementuje program IAtlMemMgr przy użyciu funkcji sterty CRT.
Składnia
class CCRTHeap : public IAtlMemMgr
Elementy członkowskie
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CCRTHeap::Przydziel | Wywołaj tę metodę, aby przydzielić blok pamięci. |
CCRTHeap::Free | Wywołaj tę metodę, aby zwolnić blok pamięci przydzielony przez tego menedżera pamięci. |
CCRTHeap::GetSize | Wywołaj tę metodę, aby uzyskać przydzielony rozmiar bloku pamięci przydzielonego przez tego menedżera pamięci. |
CCRTHeap::Reallocate | Wywołaj tę metodę, aby ponownie przydzielić pamięć przydzieloną przez tego menedżera pamięci. |
Uwagi
CCRTHeap
implementuje funkcje alokacji pamięci przy użyciu funkcji sterty CRT, w tym malloc, free, realloc i _msize.
Przykład
Zobacz przykład dla programu IAtlMemMgr.
Hierarchia dziedziczenia
IAtlMemMgr
CCRTHeap
Wymagania
Nagłówek: atlmem.h
CCRTHeap::Przydziel
Wywołaj tę metodę, aby przydzielić blok pamięci.
virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();
Parametry
nBajty
Żądana liczba bajtów w nowym bloku pamięci.
Wartość zwracana
Zwraca wskaźnik na początek nowo przydzielonego bloku pamięci.
Uwagi
Wywołaj metodę CCRTHeap::Free lub CCRTHeap::Reallocate , aby zwolnić pamięć przydzieloną przez tę metodę.
Zaimplementowano przy użyciu malloc.
CCRTHeap::Free
Wywołaj tę metodę, aby zwolnić blok pamięci przydzielony przez tego menedżera pamięci.
virtual void Free(void* p) throw();
Parametry
p
Wskaźnik do pamięci przydzielonej wcześniej przez tego menedżera pamięci. Wartość NULL jest prawidłową wartością i nic nie robi.
Uwagi
CCRTHeap::GetSize
Wywołaj tę metodę, aby uzyskać przydzielony rozmiar bloku pamięci przydzielonego przez tego menedżera pamięci.
virtual size_t GetSize(void* p) throw();
Parametry
p
Wskaźnik do pamięci przydzielonej wcześniej przez tego menedżera pamięci.
Wartość zwracana
Zwraca rozmiar przydzielonego bloku pamięci w bajtach.
Uwagi
Zaimplementowano przy użyciu _msize.
CCRTHeap::Reallocate
Wywołaj tę metodę, aby ponownie przydzielić pamięć przydzieloną przez tego menedżera pamięci.
virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();
Parametry
p
Wskaźnik do pamięci przydzielonej wcześniej przez tego menedżera pamięci.
nBajty
Żądana liczba bajtów w nowym bloku pamięci.
Wartość zwracana
Zwraca wskaźnik na początek nowo przydzielonego bloku pamięci.
Uwagi
Wywołaj metodę CCRTHeap::Free , aby zwolnić pamięć przydzieloną przez tę metodę. Zaimplementowano przy użyciu przydziału rzeczywistego.
Zobacz też
Omówienie klasy
Klasa CComHeap
Klasa CWin32Heap
Klasa CLocalHeap
Klasa CGlobalHeap
Klasa IAtlMemMgr