Classe de CAtlMap
Essa classe fornece métodos para criar e gerenciar um objeto de mapa.
template<
typename K,
typename V,
class KTraits = CElementTraits< K >,
class VTraits = CElementTraits< V >
>
class CAtlMap
Parâmetros
K
o tipo de elemento chave.v
O tipo de elemento de valor.KTraits
O código usado para copiar ou mover elementos chaves. Consulte classe de CElementTraits para obter mais detalhes.VTraits
O código usado para copiar ou mover elementos de valor.
Membros
Typedefs público
Nome |
Descrição |
---|---|
Tipo usado quando uma chave é passada como um argumento de entrada |
|
Tipo usado quando uma chave é retornada como um argumento de saída. |
|
Tipo usado quando um valor é passado como um argumento de entrada. |
|
Tipo usado quando um valor é passado como um argumento de saída. |
Classes públicas
Nome |
Descrição |
---|---|
Uma classe que contém os elementos da chave e valor. |
Membros de dados de CPair
Nome |
Descrição |
---|---|
O membro de dados que armazena o elemento chave. |
|
O membro de dados que armazena o elemento de valor. |
Construtores public
Nome |
Descrição |
---|---|
o construtor. |
|
O destrutor. |
Métodos públicos
Nome |
Descrição |
---|---|
Chamar esse método para fazer com que AFIRMAR se CAtlMap é inválido. |
|
Chamar esse método para desativar repita automático do objeto de CAtlMap . |
|
Chamar esse método para ativar repita automático do objeto de CAtlMap . |
|
Chamar esse método para retornar o elemento em uma posição especificada no mapa. |
|
Chamar esse método para recuperar o número de elementos no mapa. |
|
Chamar esse método para determinar o número de compartimentos no hash do mapa - tabela. |
|
Chamar esse método para recuperar a chave armazenada na posição determinada no objeto de CAtlMap . |
|
Chamar esse método para obter um ponteiro para os seguintes pares do elemento armazenados no objeto de CAtlMap . |
|
Obtém o próximo elemento para iterar. |
|
Chamar esse método para recuperar a próxima chave do objeto de CAtlMap . |
|
Chamar esse método para obter o valor do objeto de CAtlMap seguir. |
|
Chamar esse método para iniciar uma iteração de mapa. |
|
Chamar esse método para recuperar o valor armazenado em uma determinada posição no objeto de CAtlMap . |
|
Chamar esse método para inicializar o tabela de hash. |
|
Chamar esse método para testar um objeto de mapa vazia. |
|
Chamar esse método para pesquisar chaves ou valores no objeto de CAtlMap . |
|
Chamar esse método para repetir o objeto de CAtlMap . |
|
Chamar esse método para remover todos os elementos de objeto de CAtlMap . |
|
Chamar esse método para remover o elemento na posição determinada no objeto de CAtlMap . |
|
Chamar esse método para remover um elemento de objeto de CAtlMap , usando a chave. |
|
Chamar esse método para inserir um par do elemento no mapa. |
|
Chamar esse método para definir a carga ideal do objeto de CAtlMap . |
|
Chamar esse método para alterar o valor armazenado em uma determinada posição no objeto de CAtlMap . |
Operadores públicos
Nome |
Descrição |
---|---|
Substitui ou adiciona um novo elemento a CAtlMap. |
Comentários
CAtlMap fornece suporte para uma matriz de mapeamento de qualquer tipo determinado, gerenciando uma matriz não ordenada de chaves elementos e seus valores associados. Elementos (consistindo de uma chave e um valor) são armazenados usando um algoritmo de hash, permitindo que uma grande quantidade de dados com eficiência é armazenada e recuperadas.
Os parâmetros de KTraits e de VTraits são classes dos traços que contêm qualquer código suplementar necessário copiar ou mover elementos.
Uma alternativa a CAtlMap é oferecida pela classe de CRBMap . CRBMap armazena pares chave/valor também, mas diferentes características de desempenho das visualizações. O tempo tirados para inserir um item, para pesquisar uma chave, ou para excluir uma chave de um objeto de CRBMap são de log do pedido (em) em , onde é o número de elementos. Para CAtlMap, todas essas operações normalmente assumem um tempo constantes, embora os piores de hipotéticos podem ser de pedido . Em. Portanto, no caso CAtlMap típicos, é mais rápido.
Outra diferença entre CRBMap e CAtlMap torna-se aparente para percorrer os elementos armazenados. Em CRBMap, os elementos são visitados em uma ordem classificada. Em CAtlMap, os elementos não são ordenados, e nenhum pedido pode ser inferido.
Quando um pequeno número de elementos precisam ser armazenados, considere usar a classe de CSimpleMap em vez de isso.
Para obter mais informações, consulte Classes de coleção de ATL.
Requisitos
Cabeçalho: atlcoll.h