Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) e a Active Template Library (ATL) continuam a ser suportadas. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
Esta classe representa a interface para um CStringT gestor de memória.
Sintaxe
__interface IAtlStringMgr
Membros
Methods
| Nome | Description |
|---|---|
| Alocar | Chame este método para alocar uma nova estrutura de dados de cadeia. |
| Clone | Chame este método para devolver um ponteiro a um novo gestor de strings para uso com outra instância de CSimpleStringT. |
| Gratuito | Chame este método para libertar uma estrutura de dados de cadeia. |
| GetNilString | Devolve um ponteiro para o CStringData objeto usado por objetos de string vazios. |
| Realocar | Chame este método para realocar uma estrutura de dados de cadeia. |
Observações
Esta interface gere a memória usada pelas classes de string independentes de MFC; como CSimpleStringT, CStringT e CFixedStringT.
Também pode usar esta classe para implementar um gestor de memória personalizado para a sua classe de strings personalizada. Para mais informações, consulte Gestão de Memória e CStringT.
Requerimentos
Cabeçalho: atlsimpstr.h
IAtlStringMgr::Allocate
Aloca uma nova estrutura de dados de string.
CStringData* Allocate(int nAllocLength,int nCharSize) throw();
Parâmetros
nAllocLength
O número de caracteres no novo bloco de memória.
nCharSize
O tamanho (em bytes) do tipo de carácter usado pelo gestor de strings.
Valor de retorno
Devolve um ponteiro para o bloco de memória recém-alocado.
Observação
Não sinalize uma alocação falhada lançando uma exceção. Em vez disso, uma alocação falhada deve ser sinalizada retornando NULL.
Observações
Chame IAtlStringMgr::Free ou IAtlStringMgr::ReAllocate para libertar a memória alocada por este método.
Observação
Para exemplos de utilização, veja Gestão de Memória e CStringT.
IAtlStringMgr::Clone
Devolve um ponteiro para um novo gestor de strings para uso com outra instância de CSimpleStringT.
IAtlStringMgr* Clone() throw();
Valor de retorno
Devolve uma cópia do IAtlStringMgr objeto.
Observações
Comumente chamado pelo framework quando é necessário um gestor de strings para uma nova string. Na maioria dos casos, o this ponteiro é devolvido.
No entanto, se o gestor de memória não suportar ser usado por múltiplas instâncias de CSimpleStringT, um ponteiro para um gestor de strings partilhável deve ser retornado.
Observação
Para exemplos de utilização, veja Gestão de Memória e CStringT.
IAtlStringMgr::Grátis
Liberta uma estrutura de dados em cadeia.
void Free(CStringData* pData) throw();
Parâmetros
pDados
Um ponteiro para o bloco de memória a libertar.
Observações
Liberta o bloco de memória especificado anteriormente alocado por Allocate ou Relocate.
Observação
Para exemplos de utilização, veja Gestão de Memória e CStringT.
IAtlStringMgr::GetNilString
Devolve um ponteiro para uma estrutura de dados de cadeia para uma cadeia vazia.
CStringData* GetNilString() throw();
Valor de retorno
Um ponteiro para o CStringData objeto usado para representar uma cadeia vazia.
Observações
Chame esta função para devolver uma representação de uma cadeia vazia.
Observação
Ao implementar um gestor de strings personalizado, esta função nunca deve falhar. Podes garantir isto incorporando uma instância de CNilStringData na classe gestora de strings e devolvendo um ponteiro para essa instância.
Observação
Para exemplos de utilização, veja Gestão de Memória e CStringT.
IAtlStringMgr::Reallocate
Realoca uma estrutura de dados em cadeia.
CStringData* Reallocate(
CStringData* pData,
int nAllocLength,
int nCharSize) throw();
Parâmetros
pDados
Apontador para a memória anteriormente atribuída por este gestor de memória.
nAllocLength
O número de caracteres no novo bloco de memória.
nCharSize
O tamanho (em bytes) do tipo de carácter usado pelo gestor de strings.
Valor de retorno
Devolve um ponteiro para o início do bloco de memória recém-alocado.
Observações
Chame esta função para redimensionar o bloco de memória existente especificado por pData.
Chame IAtlStringMgr::Free para libertar a memória alocada por este método.
Observação
Para exemplos de utilização, veja Gestão de Memória e CStringT.