mapa key_comp() en C++ STL

El std::map::key_comp() es una función incorporada en C++ STL que devuelve una copia del objeto de comparación utilizado por el contenedor. De forma predeterminada, este es un objeto menos, que devuelve lo mismo que el operador ‘<‘. es un puntero de función o un objeto de función que toma dos argumentos del mismo tipo que los elementos del contenedor y devuelve verdadero si se considera que el primer argumento va antes que el segundo en el estricto orden débil que define o falso de lo contrario. Dos claves se consideran equivalentes si key_comp devuelve falso por reflejo (es decir, sin importar el orden en que se pasan las claves como argumentos).

Sintaxis:

key_compare map_name.key_comp();

Parámetros: Esta función no acepta ningún parámetro.

Valor devuelto: la función devuelve una copia del objeto de comparación utilizado por el contenedor.

Los siguientes ejemplos ilustran el método map::key_comp():

Programa 1:

// C++ program to illustrate the
// map::key_comp() function
  
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
  
    // Creating a map named m;
    map<char, int> m;
  
    map<char, int>::key_compare
        comp
        = m.key_comp();
  
    // Inserting elements into map
    m['a'] = 10;
    m['b'] = 20;
    m['c'] = 30;
    m['d'] = 40;
  
    cout << "Map has the elements\n";
  
    // Store key value of last element
    char l = m.rbegin()->first;
  
    // initializing the iterator
    map<char, int>::iterator it = m.begin();
  
    // printing elements of all map
    do {
  
        cout << it->first
             << " => "
             << it->second
             << '\n';
    } while (comp((*it++).first, l));
  
    return 0;
}
Producción:

Map has the elements
a => 10
b => 20
c => 30
d => 40

Programa 2:

// C++ program to illustrate the
// map::key_comp() function
  
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
  
    // Creating a map named m;
    map<char, int> m;
  
    map<char, int>::key_compare
        comp
        = m.key_comp();
  
    // Inserting elements into map
    m['a'] = 1;
    m['b'] = 2;
    m['c'] = 3;
    m['d'] = 4;
  
    cout << "Map has the elements\n";
  
    // Store key value of last element
    char l = m.rbegin()->first;
  
    // initializing the iterator
    map<char, int>::iterator it = m.begin();
  
    // printing elements of all map
    do {
  
        cout << it->first
             << " => "
             << it->second
             << '\n';
    } while (comp((*it++).first, l));
  
    return 0;
}
Producción:

Map has the elements
a => 1
b => 2
c => 3
d => 4

Publicación traducida automáticamente

Artículo escrito por ankit15697 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *