CWin32Heap::CWin32Heap
o construtor.
CWin32Heap( ) throw( );
CWin32Heap(
HANDLE hHeap
) throw( );
CWin32Heap(
DWORD dwFlags,
size_t nInitialSize,
size_t nMaxSize = 0
);
Parâmetros
hHeap
Um objeto existente da heap.dwFlags
Sinalizadores usados na criação do heap.nInitialSize
O tamanho inicial da heap.nMaxSize
O tamanho máximo do heap.
Comentários
Antes de atribuí-lo a memória, é necessário fornecer o objeto de CWin32Heap com um identificador válido no heap.A maneira mais simples para fazer isso é usar o heap do processo:
CWin32Heap MyHeap(GetProcessHeap());
Também é possível fornecer um identificador existente da heap para o construtor, em esse caso o novo objeto não tem sobre a propriedade da heap.O identificador da heap original ainda será válido quando o objeto de CWin32Heap é excluído.
Um heap existente também pode ser anexado ao novo objeto, usando CWin32Heap::Attach.
Se um heap é necessário onde todas as operações são executadas de um único segmento, a melhor maneira é criar o objeto da seguinte maneira:
CWin32Heap MyHeap(HEAP_NO_SERIALIZE, SomeInitialSize);
O parâmetro HEAP_NO_SERIALIZE especifica que a exclusão mútua não será usada quando as funções do heap de atributo e liberam a memória, com um aumento concessão de desempenho.
O terceiro parâmetro padrão é 0, que permite que o heap aumenta conforme necessário.Consulte HeapCreate para uma explicação sobre os tamanhos de memória e os sinalizadores.
Requisitos
Cabeçalho: atlmem.h