Classe CMap
Uma classe de coleção de dicionário que mapeia chaves exclusivas para valores.
template< class KEY, class ARG_KEY, class VALUE, class ARG_VALUE >class CMap : public CObject
Parâmetros
KEY
Classe de objeto usado como a chave do mapa.ARG _ KEY
Tipo de dados usado para argumentos de KEY ; geralmente uma referência a KEY.VALUE
Classe de objeto armazenado no mapa.ARG _ VALUE
Tipo de dados usado para argumentos de VALUE ; geralmente uma referência a VALUE.
Membros
Estruturas públicas
Nome |
Descrição |
---|---|
Uma estrutura aninhada que contém um valor da chave e o valor do objeto associado. |
Construtores public
Nome |
Descrição |
---|---|
Constrói uma coleção que mapeia chaves para valores. |
Métodos públicos
Nome |
Descrição |
---|---|
Retorna o número de elementos em esse mapeamento. |
|
Retorna o número de elementos na tabela hash. |
|
Obtém o próximo elemento para iterar. |
|
Retorna o número de elementos em esse mapeamento. |
|
Retorna a posição do primeiro elemento. |
|
Inicializa o hash e especifique seu tamanho. |
|
Testa a condição de mapa vazio- (elementos). |
|
Pesquisa o valor mapeado para uma determinada chave. |
|
Retorna um ponteiro para o primeiro elemento. |
|
Obtém um ponteiro para o próximo elemento para iterar. |
|
Retorna um ponteiro a uma chave cujo valor corresponde ao valor especificado. |
|
Remove todos os elementos de esse mapeamento. |
|
Remove um elemento especificado por uma chave. |
|
Insere um elemento no mapa; substitui um elemento existente se uma tecla correspondente for encontrada. |
Operadores públicos
Nome |
Descrição |
---|---|
Insere um elemento no mapa — substituição do operador para SetAt. |
Comentários
Uma vez que você inseriu um par chave-valor (elemento) no mapa de forma eficiente, você pode recuperar ou exclua os pares usando a chave para acessá-lo. Você também pode iterar todos os elementos no mapa.
Uma variável do tipo POSIÇÃO é usado para acesso alternativo as entradas. Você pode usar POSIÇÃO “memoriza” uma entrada e iterar-lo através do mapa. Você pode pensar que essa interação é seqüencial pelo valor da chave; não é. A seqüência de elementos recuperados é indefinida.
Determinadas funções de membro de essa classe chamam funções auxiliares globais que devem ser personalizadas para a maioria dos usos da classe de CMap . Consulte Auxiliares de classe de coleção na seção de macros e de Globais de MFCReference.
CMap substitui CObject::Serialize para oferecer suporte a serialização e a despejo de seus elementos. Se um mapa é armazenado em um arquivo usando Serializeneutro, cada elemento do mapa é serializado por sua vez. A implementação padrão de função auxiliar de SerializeElements faz uma gravação bit a bit. Para obter informações sobre serialização da coleção de itens do ponteiro derivados de CObject ou outros tipos definidos pelo usuário, consulte Como fazer uma coleção fortemente tipada.
Se você precisar de um despejo diagnóstico dos elementos individuais no mapa (as chaves e valores), você deve definir o tamanho do contexto de um despejo a 1 ou maior.
Quando um objeto de CMap é excluído, ou quando seus elementos são removidos, as chaves e valores ambas são removidos.
A derivação da classe de mapa é semelhante à derivação da lista. Consulte o artigo coleções para uma ilustração de derivar de uma classe de lista de propósito especial.
Hierarquia de herança
CMap
Requisitos
Cabeçalho: afxtempl.h