Como encontrar uma determinada chaves existe em um STDMAP C ++

Como encontrar uma determinada chaves existe em um STDMAP C ++
Um recipiente C ++ conhecido como um “STD :: mapa” é usado para manter itens no formato do par de valores-chave. Os elementos são classificados de acordo com a ordem dos valores -chave com os quais se relacionam. Uma tarefa típica para os desenvolvedores é procurar uma certa chave em um std :: mapa.

Este artigo examinará várias abordagens para determinar se uma certa chave já existe em um C++ std :: mapa.

Como encontrar uma determinada chave existe em um mapa C ++ Std ::

Existem dois métodos para verificar se existe uma determinada chave em um c++ std :: mapa.

  • std :: map :: encontre
  • std :: map :: count

Método 1: std :: map :: encontre

encontrar() é uma função útil em C ++ que pode ser usada para encontrar uma determinada chave em um C++ std :: mapa. A função aceita uma única entrada do chave valor e procuram por isso. Se um elemento com um chave comparável a k é descoberto, o mapa :: encontre (k) função retorna um iterador a ele; Caso contrário, ele retorna um iterador para mapa :: fim. A entrada do usuário dada ao encontrar() A função é usada para obter o valor da chave depois de inicializar o mapa de qualquer std :: par tipo.

#incluir
#incluir
#incluir
int main ()

std :: mapa mapa =
"English", 1, "Maths", 2, "Science", 3
;
std :: string key = "History";
if (mapa.Encontre (chave) != mapa.fim())
std :: cout << "Key found!" << std::endl;
outro
std :: cout << "Key not found!" << std::endl;

retornar 0;

No código acima, estamos inicializando um mapa com chaves e valores. Então definimos uma chave chamada "história", e use o encontrar() método e se a declaração para pesquisar se essa chave existe no mapa ou não.

Saída

Método 2: STD :: map :: count

contar() é outra função interna para encontrar uma determinada chave em um C ++ no std :: mapa. Esta função retorna o número de entradas que correspondem ao valor da chave especificado. Se a chave especificada for encontrada no mapa, o método count () retorna 1, caso contrário, retorna 0. Isso ocorre porque um mapa em C ++ apenas acompanha as teclas exclusivas. Para imprimir o texto afirmador quando a chave especificada existir em um objeto de mapa, podemos usar o contar() Chamada de função como condição se.

#incluir
#incluir
#incluir
int main ()

std :: mapa mapa =
"English", 1, "Maths", 2, "Science", 3
;
std :: string key = "matemática";
if (mapa.contagem (chave) != 0)
std :: cout << "Key found!" << std::endl;
outro
std :: cout << "Key not found!" << std::endl;

retornar 0;

No código acima, estamos inicializando um mapa com chaves e valores. Então definimos uma chave chamada "Matemáticas", e use o contar() método e se a declaração para pesquisar se essa chave existe no mapa ou não.

Saída

Conclusão

O std :: mapa O contêiner é uma estrutura de dados composta de pares de valor-chave que são mantidos ordenados e cada elemento tem uma chave distinta. Existem dois métodos mencionados no artigo acima, encontrar() função e contar() função, para descobrir se existe uma determinada chave em um c++ std :: mapa. Esses métodos podem ser usados ​​para localizar uma certa chave no seu código C ++.