Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Fornece um "wrapper" seguro para tipos para objetos das classes CMapPtrToPtrde mapa de ponteiro , , CMapPtrToWordCMapWordToPtr, e CMapStringToPtr.
Sintaxe
template<class BASE_CLASS, class KEY, class VALUE>
class CTypedPtrMap : public BASE_CLASS
Parâmetros
BASE_CLASS
Classe base da classe do mapa de ponteiro digitado; deve ser uma classe de mapa de ponteiro (CMapPtrToPtr, CMapPtrToWord, CMapWordToPtr, ou CMapStringToPtr).
CHAVE
Classe do objeto usado como chave para o mapa.
VALOR
Classe do objeto armazenado no mapa.
Membros
Métodos Públicos
| Nome | Descrição |
|---|---|
| CTypedPtrMap::GetNextAssoc | Obtém o próximo elemento para iteração. |
| CTypedPtrMap::Pesquisa | Devolve um KEY com base num VALUEficheiro . |
| CTypedPtrMap::RemoveKey | Remove um elemento especificado por uma chave. |
| CTypedPtrMap::SetAt | Insere um elemento no mapa; substitui um elemento existente se uma chave correspondente for encontrada. |
Operadores Públicos
| Nome | Descrição |
|---|---|
| CTypedPtrMap::operador [ ] | Insere um elemento no mapa. |
Observações
Quando você usa CTypedPtrMapo , o recurso de verificação de tipos C++ ajuda a eliminar erros causados por tipos de ponteiro incompatíveis.
Como todas as CTypedPtrMap funções estão embutidas, o uso desse modelo não afeta significativamente o tamanho ou a velocidade do seu código.
Para obter mais informações sobre como usar CTypedPtrMapo , consulte os artigos Coleções e classes deTemplate-Based.
Hierarquia de herança
BASE_CLASS
CTypedPtrMap
Requerimentos
Cabeçalho: afxtempl.h
CTypedPtrMap::GetNextAssoc
Recupera o elemento de mapa em e, em rNextPositionseguida, atualiza rNextPosition para fazer referência ao próximo elemento no mapa.
void GetNextAssoc(
POSITION& rPosition,
KEY& rKey,
VALUE& rValue) const;
Parâmetros
rPosição
Especifica uma referência a um valor POSITION retornado por uma chamada anterior GetNextAssoc ou BASE_CLASS::GetStartPosition .
CHAVE
Parâmetro de modelo que especifica o tipo de chaves do mapa.
rChave
Especifica a chave retornada do elemento recuperado.
VALOR
Parâmetro de modelo que especifica o tipo de valores do mapa.
rValor
Especifica o valor retornado do elemento recuperado.
Observações
Esta função é mais útil para iterar através de todos os elementos no mapa. Observe que a sequência de posição não é necessariamente a mesma que a sequência de valores de chave.
Se o elemento recuperado for o último no mapa, o novo valor de rNextPosition será definido como NULL.
Esta função embutida chama BASE_CLASS::GetNextAssoc.
CTypedPtrMap::Pesquisa
Lookup usa um algoritmo de hash para encontrar rapidamente o elemento map com uma chave que corresponde exatamente.
BOOL Lookup(BASE_CLASS ::BASE_ARG_KEY key, VALUE& rValue) const;
Parâmetros
BASE_CLASS
Parâmetro de modelo que especifica a classe base da classe deste mapa.
chave
A chave do elemento a ser pesquisado.
VALOR
Parâmetro de modelo que especifica o tipo de valores armazenados neste mapa.
rValor
Especifica o valor retornado do elemento recuperado.
Valor de retorno
Diferente de zero se o elemento foi encontrado; caso contrário, 0.
Observações
Esta função embutida chama BASE_CLASS::Lookup.
CTypedPtrMap::operador [ ]
Este operador pode ser usado apenas no lado esquerdo de uma instrução de atribuição (um valor l).
VALUE& operator[ ](base_class ::base_arg_key key);
Parâmetros
VALOR
Parâmetro de modelo que especifica o tipo de valores armazenados neste mapa.
BASE_CLASS
Parâmetro de modelo que especifica a classe base da classe deste mapa.
chave
A chave do elemento a ser pesquisado ou criado no mapa.
Observações
Se não houver nenhum elemento map com a chave especificada, um novo elemento será criado. Não existe um "lado direito" (valor r) equivalente a este operador porque existe a possibilidade de uma chave não ser encontrada no mapa. Use a função de membro para recuperação de Lookup elementos.
CTypedPtrMap::RemoveKey
Esta função de membro chama BASE_CLASS::RemoveKey.
BOOL RemoveKey(KEY key);
Parâmetros
CHAVE
Parâmetro de modelo que especifica o tipo de chaves do mapa.
chave
Chave para o elemento a ser removido.
Valor de retorno
Diferente de zero se a entrada foi encontrada e removida com êxito; caso contrário, 0.
Observações
Para obter observações mais detalhadas, consulte CMapStringToOb::RemoveKey.
CTypedPtrMap::SetAt
Esta função de membro chama BASE_CLASS::SetAt.
void SetAt(KEY key, VALUE newValue);
Parâmetros
CHAVE
Parâmetro de modelo que especifica o tipo de chaves do mapa.
chave
Especifica o valor da chave de newValue.
novoValor
Especifica o ponteiro de objeto que é o valor do novo elemento.
Observações
Para obter observações mais detalhadas, consulte CMapStringToOb::SetAt.
Ver também
MFC Amostra COLLECT
Gráfico de Hierarquia
Classe CMapPtrToPtr
Classe CMapPtrToWord
Classe CMapWordToPtr
Classe CMapStringToPtr