Classe CLocalHeap
Essa classe implementa IAtlMemMgr usando as funções de heap local do Win32.
Importante
Essa classe e seus membros não podem ser usados em aplicativos que são executados no Windows Runtime.
Sintaxe
class CLocalHeap : public IAtlMemMgr
Membros
Métodos públicos
Nome | Descrição |
---|---|
CLocalHeap:: Allocate | Chame esse método para alocar um bloco de memória. |
CLocalHeap:: Free | Chame esse método para liberar um bloco de memória alocado por esse Gerenciador de memória. |
CLocalHeap::GetSize | Chame esse método para obter o tamanho alocado de um bloco de memória alocado por esse Gerenciador de memória. |
CLocalHeap:: realocar | Chame esse método para realocar memória alocada por esse Gerenciador de memória. |
Comentários
CLocalHeap
implementa as funções de alocação de memória usando as funções de heap local do Win32.
Observação
As funções de heap local são mais lentas do que outras funções de gerenciamento de memória e não fornecem quantos recursos. Portanto, novos aplicativos devem usar as funções de heap. Eles estão disponíveis na classe CWin32Heap .
Exemplo
Consulte o exemplo de IAtlMemMgr.
Hierarquia de herança
IAtlMemMgr
CLocalHeap
Requisitos
Cabeçalho: atlmem. h
CLocalHeap:: Allocate
Chame esse método para alocar um bloco de memória.
virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();
Parâmetros
nBytes
O número de bytes solicitado no novo bloco de memória.
Valor Retornado
Retorna um ponteiro para o início do bloco de memória alocado recentemente.
Comentários
Chame CLocalHeap:: Free ou CLocalHeap:: realoque para liberar a memória alocada por esse método.
Implementado usando LocalAlloc com um parâmetro de sinalizador de LMEM_FIXED.
CLocalHeap:: Free
Chame esse método para liberar um bloco de memória alocado por esse Gerenciador de memória.
virtual void Free(void* p) throw();
Parâmetros
DTI
Ponteiro para a memória alocada anteriormente por esse Gerenciador de memória. NULL é um valor válido e não faz nada.
Comentários
Implementado usando LocalFree.
CLocalHeap::GetSize
Chame esse método para obter o tamanho alocado de um bloco de memória alocado por esse Gerenciador de memória.
virtual size_t GetSize(void* p) throw();
Parâmetros
DTI
Ponteiro para a memória alocada anteriormente por esse Gerenciador de memória.
Valor Retornado
Retorna o tamanho do bloco de memória alocado em bytes.
Comentários
Implementado usando o Localize.
CLocalHeap:: realocar
Chame esse método para realocar memória alocada por esse Gerenciador de memória.
virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();
Parâmetros
DTI
Ponteiro para a memória alocada anteriormente por esse Gerenciador de memória.
nBytes
O número de bytes solicitado no novo bloco de memória.
Valor Retornado
Retorna um ponteiro para o início do bloco de memória alocado recentemente.
Comentários
Chame CLocalHeap:: Free para liberar a memória alocada por este método.
Implementado usando LocalReAlloc.
Confira também
Visão geral da classe
Classe CComHeap
Classe CWin32Heap
Classe CGlobalHeap
Classe CCRTHeap
Classe IAtlMemMgr