Partilhar via


Classe CMapStringToString

Observação

A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Suporta mapas de CString objetos codificados por CString objetos.

Sintaxe

class CMapStringToString : public CObject

Membros

As funções membros de CMapStringToString são semelhantes às funções membros da classe CMapStringToOb. Devido a esta semelhança, pode usar a CMapStringToOb documentação de referência para especificações da função dos membros. Sempre que vir um CObject ponteiro como valor de retorno ou parâmetro de função "saída", substitua por um ponteiro para char. Sempre que vir um CObject ponteiro como parâmetro de função "entrada", substitua por um ponteiro para char.

BOOL CMapStringToString::Lookup(LPCTSTR<key>, CString&<rValue>) const;

por exemplo, traduz-se em

BOOL CMapStringToOb::Lookup(const char*<key>, CObject*&<rValue>) const;

Estruturas Públicas

Nome Description
CMapStringToString::CPair Uma estrutura aninhada contendo um valor-chave e o valor do objeto string associado.

Construtores Públicos

Nome Description
CMapStringToString::CMapStringToString Construtor.

Métodos Públicos

Nome Description
CMapStringToString::GetCount Devolve o número de elementos neste mapa.
CMapStringToString::GetHashTableSize Determina o número atual de elementos na tabela hash.
CMapStringToString::GetNextAssoc Recebe o próximo elemento para iterar.
CMapStringToString::GetSize Devolve o número de elementos neste mapa.
CMapStringToString::GetStartPosition Devolve a posição do primeiro elemento.
CMapStringToString::HashKey Calcula o valor de hash de uma chave especificada.
CMapStringToString::InitHashTable Inicializa a tabela de hash.
CMapStringToString::IsEmpty Testa a condição de mapa vazio (sem elementos).
CMapStringToString::Procurar Procura um ponteiro de vazio com base na tecla de ponteiro de vazio. O valor do apontador, e não a entidade para a qual aponta, é usado para a comparação de chaves.
CMapStringToString::LookupKey Devolve uma referência à chave associada ao valor da chave especificada.
CMapStringToString::P GetFirstAssoc Recebe um indicador para o primeiro CString no mapa.
CMapStringToString::P GetNextAssoc Recebe um indicador para o próximo CString para iterar.
CMapStringToString::P Procurar Devolve um ponteiro para um CString cujo valor corresponde ao valor especificado.
CMapStringToString::RemoveAll Remove todos os elementos deste mapa.
CMapStringToString::RemoveKey Remove um elemento especificado por uma chave.
CMapStringToString::SetAt Insere um elemento no mapa; substitui um elemento existente se for encontrada uma chave correspondente.

Operadores Públicos

Nome Description
CMapStringToString::operator [ ] Insere um elemento na aplicação — substituição de operadores para SetAt.

Observações

CMapStringToString incorpora a IMPLEMENT_SERIAL macro para suportar a serialização e o despejo dos seus elementos. Cada elemento é serializado por sua vez se um mapa for armazenado num arquivo, seja com o operador de inserção sobrecarregada ( <<) ou com a Serialize função membro.

Se precisar de um dump de elementos individuais CString- CString , deve definir a profundidade do contexto do dump para 1 ou superior.

Quando um CMapStringToString objeto é eliminado, ou quando os seus elementos são removidos, os CString objetos são removidos conforme apropriado.

Para mais informações sobre CMapStringToString, consulte o artigo Coleções.

Hierarquia de herança

CObject

CMapStringToString

Requerimentos

Cabeçalho: afxcoll.h

CMapStringToString::CPair

Contém um valor-chave e o valor do objeto string associado.

Observações

Esta é uma estrutura aninhada dentro da classe CMapStringToString.

A estrutura é composta por dois campos:

  • key O valor real do tipo de chave.

  • value O valor do objeto associado.

É usado para armazenar os valores de retorno de CMapStringToString::P Lookup, CMapStringToString::P GetFirstAssoc, e CMapStringToString::P GetNextAssoc.

Example

Para um exemplo de uso, veja o exemplo de CMapStringToString::P Lookup.

CMapStringToString::P GetFirstAssoc

Devolve a primeira entrada do objeto do mapa.

const CPair* PGetFirstAssoc() const;

CPair* PGetFirstAssoc();

Valor de retorno

Um indicador para a primeira entrada no mapa; ver CMapStringToString::CPair. Se o mapa estiver vazio, o valor é NULL.

Observações

Chama esta função para devolver um ponteiro ao primeiro elemento do objeto do mapa.

Example

CMapStringToString myMap;
CString myStr[4] = {_T("One"), _T("Two"), _T("Three"), _T("Four")};
CMapStringToString::CPair *pCurVal;

myMap.InitHashTable(257);

// Add 4 elements to the map.
myMap.SetAt(myStr[0], _T("Odd"));
myMap.SetAt(myStr[1], _T("Even"));
myMap.SetAt(myStr[2], _T("Odd"));
myMap.SetAt(myStr[3], _T("Even"));

pCurVal = myMap.PGetFirstAssoc();
while (pCurVal != NULL)
{
   _tprintf_s(_T("Current key value at %s: %s\n"),
              pCurVal->key, pCurVal->value);
   pCurVal = myMap.PGetNextAssoc(pCurVal);
}

CMapStringToString::P GetNextAssoc

Recupera o elemento de mapa apontado pelo pAssocRec.

const CPair *PGetNextAssoc(const CPair* pAssoc) const;

CPair *PGetNextAssoc(const CPair* pAssoc);

Parâmetros

pAssoc
Aponta para uma entrada no mapa devolvida por uma chamada anterior PGetNextAssoc ou PGetFirstAssoc .

Valor de retorno

Um apontador para a próxima entrada no mapa; ver CMapStringToString::CPair. Se o elemento for o último no mapa, o valor é NULO.

Observações

Chame este método para iterar por todos os elementos do mapa. Recuperar o primeiro elemento com uma chamada para PGetFirstAssoc e depois iterar pelo mapa com chamadas sucessivas para PGetNextAssoc.

Example

Veja o exemplo de CMapStringToString::P GetFirstAssoc.

CMapStringToString::P Procurar

Procura o valor mapeado para uma dada chave.

const CPair* PLookup(LPCTSTR key) const;

CPair* PLookup(LPCTSTR key);

Parâmetros

chave
Um ponteiro para a chave do elemento a procurar.

Valor de retorno

Um apontador para a chave especificada.

Observações

Chame este método para procurar um elemento de mapa com uma chave que corresponda exatamente à chave dada.

Example

CMapStringToString myMap;
CString myStr[4] = {_T("One"), _T("Two"), _T("Three"), _T("Four")};

myMap.InitHashTable(257);

// Add 4 elements to the map.
myMap.SetAt(myStr[0], _T("Odd"));
myMap.SetAt(myStr[1], _T("Even"));
myMap.SetAt(myStr[2], _T("Odd"));
myMap.SetAt(myStr[3], _T("Even"));

// Print the element values with odd key values.
CMapStringToString::CPair *pCurVal;

for (int i = 0; i < 4; i += 2)
{
   pCurVal = myMap.PLookup(myStr[i]);
   _tprintf_s(_T("Current key value at %s: %s\n"),
              pCurVal->key, pCurVal->value);
}

Consulte também

MFC Sample COLLECT
CObject Classe
Gráfico de Hierarquia