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.
Dá suporte a mapas de objetos CString inseridos por objetos CString.
Sintaxe
class CMapStringToString : public CObject
Membros
As funções de membro de CMapStringToString são semelhantes às funções de membro da classe CMapStringToOb. Devido a essa semelhança, é possível usar a documentação de referência da CMapStringToOb para obter a função específica de membro. Onde quer que você veja um ponteiro CObject como um valor retornado ou parâmetro de função "output", substitua um ponteiro para char. Sempre que você vê um ponteiro CObject como um parâmetro de função, "input", substitua um ponteiro para char.
BOOL CMapStringToString::Lookup(LPCTSTR<key>, CString&<rValue>) const;
por exemplo, traduz para
BOOL CMapStringToOb::Lookup(const char*<key>, CObject*&<rValue>) const;
Estruturas públicas
| Nome | Descrição |
|---|---|
| CMapStringToString::CPair | Uma estrutura aninhada que contém um valor de chave e o valor do objeto de cadeia de caracteres associado. |
Construtores públicos
| Nome | Descrição |
|---|---|
| CMapStringToString::CMapStringToString | Construtor. |
Métodos públicos
| Nome | Descrição |
|---|---|
| CMapStringToString::GetCount | Retorna o número de elementos no mapa. |
| CMapStringToString::GetHashTableSize | Determina o número atual de elementos na tabela de hash. |
| CMapStringToString::GetNextAssoc | Obtém o próximo elemento para iteração. |
| CMapStringToString::GetSize | Retorna o número de elementos no mapa. |
| CMapStringToString::GetStartPosition | Retorna 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::Lookup | Procura um ponteiro nulo com base na tecla de ponteiro nulo. O valor do ponteiro, não a entidade para a qual ele aponta, é usado para a comparação de chaves. |
| CMapStringToString::LookupKey | Retorna uma referência à chave associada ao valor de chave especificado. |
| CMapStringToString::PGetFirstAssoc | Obtém um ponteiro para o primeiro CString no mapa. |
| CMapStringToString::PGetNextAssoc | Obtém um ponteiro para o próximo CString para iteração. |
| CMapStringToString::PLookup | Retorna um ponteiro para um CString cujo valor corresponde ao valor especificado. |
| CMapStringToString::RemoveAll | Remove todos os elementos desse mapa. |
| CMapStringToString::RemoveKey | Remove um elemento especificado por uma chave. |
| CMapStringToString::SetAt | Insere um elemento no mapa; substituirá um elemento se uma chave correspondente for encontrada. |
Operadores públicos
| Nome | Descrição |
|---|---|
| CMapStringToString::operator [ ] | Insere um elemento no mapa – substituição do operador por SetAt. |
Comentários
A CMapStringToString incorpora a macro IMPLEMENT_SERIAL para suportar serialização e despejo de seus elementos. Se um mapa for armazenado em um arquivo, seja com o operador de inserção (<<) sobrecarregado ou com a função de membro Serialize, cada elemento será serializado por vez.
Se for necessário um despejo de elementos de individuais CString- CString, será necessário definir a profundidade do contexto do despejo para 1 ou maior.
Quando um objeto CMapStringToString é excluído ou quando seus elementos são removidos, os objetos CString são removidos conforme apropriado.
Para mais informações sobre CMapStringToString, confira o artigo Coleções.
Hierarquia de herança
CMapStringToString
Requisitos
Cabeçalho: afxcoll.h
CMapStringToString::CPair
Contém um valor de chave e o valor do objeto de cadeia de caracteres associado.
Comentários
Essa é uma estrutura aninhada na classe CMapStringToString.
A estrutura é composta por dois campos:
keyO valor real do tipo de chave.valueO valor do objeto associado.
Ele é usado para armazenar os valores retornados de CMapStringToString::PLookup, CMapStringToString::PGetFirstAssoc e CMapStringToString::PGetNextAssoc.
Exemplo
Para um exemplo de uso, confira o exemplo de CMapStringToString::PLookup.
CMapStringToString::PGetFirstAssoc
Retorna a primeira entrada do objeto de mapa.
const CPair* PGetFirstAssoc() const;
CPair* PGetFirstAssoc();
Valor de retorno
Um ponteiro para a primeira entrada no mapa; confira CMapStringToString::CPair. Se o mapa estiver vazio, o valor será NULL.
Comentários
Chame essa função para retornar um ponteiro do primeiro elemento no objeto de mapa.
Exemplo
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::PGetNextAssoc
Recupera o elemento de mapa apontado por pAssocRec.
const CPair *PGetNextAssoc(const CPair* pAssoc) const;
CPair *PGetNextAssoc(const CPair* pAssoc);
Parâmetros
pAssoc
Aponta para uma entrada de mapa retornada por uma chamada PGetNextAssoc ou PGetFirstAssoc anterior.
Valor de retorno
Um ponteiro para a próxima entrada no mapa; confira CMapStringToString::CPair. Se o elemento for o último no mapa, o valor será NULL.
Comentários
Chame esse método para iterar todos os elementos no mapa. Recupere o primeiro elemento com uma chamada para PGetFirstAssoc e itere pelo mapa com chamadas sucessivas para PGetNextAssoc.
Exemplo
Confira o exemplo de CMapStringToString::PGetFirstAssoc.
CMapStringToString::PLookup
Pesquisa o valor mapeado para uma determinada chave.
const CPair* PLookup(LPCTSTR key) const;
CPair* PLookup(LPCTSTR key);
Parâmetros
chave
Um ponteiro para a chave para o elemento a ser pesquisado.
Valor de retorno
Um ponteiro para a chave especificada.
Comentários
Chame esse método para pesquisar um elemento de mapa com uma chave que corresponda exatamente à chave fornecida.
Exemplo
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);
}