Bibliothèque de cartes C ++ - fonction upper_bound ()

La description

La fonction C ++ std::multimap::upper_bound()renvoie un itérateur pointant vers le premier élément qui est supérieur à la clé k .

Déclaration

Voici la déclaration de la fonction std :: multimap :: upper_bound () de l'en-tête std :: map.

C ++ 98

iterator upper_bound (const key_type& k);
const_iterator upper_bound (const key_type& k) const;

Paramètres

k - Clé à rechercher.

Valeur de retour

Si l'objet est qualifié de constante, la méthode retourne un itérateur constant sinon un itérateur non constant.

Exceptions

Aucun effet sur le conteneur si une exception est levée.

Complexité temporelle

Logarithmique ie O (log n)

Exemple

L'exemple suivant montre l'utilisation de la fonction std :: multimap :: upper_bound ().

#include <iostream>
#include <map>

using namespace std;

int main(void) {
   /* Multimap with duplicates */
   multimap<char, int> m {
            {'a', 1},
            {'a', 2},
            {'b', 3},
            {'c', 4},
            {'d', 5}
         };

   auto it = m.upper_bound('a');

   cout << "Upper bound is" << endl;

   cout << it->first << " = " << it->second << endl;

   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

Upper bound is
b = 3