Condividi tramite


map::find

Restituisce un iteratore destinato alla posizione di un elemento in un mapping con un equivalente principale in una chiave specificata.

iterator find(
   const Key& _Key
);
const_iterator find(
   const Key& _Key
) const;

Parametri

  • _Key
    Il valore della chiave da corrispondere alla chiave di ordinamento di un elemento dal mapping da cercare.

Valore restituito

Un iteratore destinato alla posizione di un elemento con una chiave specificata, o il percorso che è l'ultimo elemento a mapping se non viene rilevata alcuna corrispondenza della chiave.

Note

La funzione membro restituisce un iteratore che indirizza un elemento nella mappa della chiave di ordinamento è equivalente alla chiave dell'argomento in un predicato binario che provoca un ordine base a meno che la relazione di comparabilità.

Se il valore restituito find viene assegnato a const_iterator, l'oggetto di mapping non può essere modificato.Se il valore restituito find viene assegnato a iterator, l'oggetto di mappa può essere modificato

Esempio

// map_find.cpp
// compile with: /EHsc
#include <map>
#include <iostream>

int main( )
{
   using namespace std;
   map <int, int> m1;
   map <int, int> :: const_iterator m1_AcIter, m1_RcIter;
   typedef pair <int, int> Int_Pair;

   m1.insert ( Int_Pair ( 1, 10 ) );
   m1.insert ( Int_Pair ( 2, 20 ) );
   m1.insert ( Int_Pair ( 3, 30 ) );

   m1_RcIter = m1.find( 2 );
   cout << "The element of map m1 with a key of 2 is: "
        << m1_RcIter -> second << "." << endl;

   // If no match is found for the key, end( ) is returned
   m1_RcIter = m1.find( 4 );

   if ( m1_RcIter == m1.end( ) )
      cout << "The map m1 doesn't have an element "
           << "with a key of 4." << endl;
   else
      cout << "The element of map m1 with a key of 4 is: "
           << m1_RcIter -> second << "." << endl;

   // The element at a specific location in the map can be found 
   // using a dereferenced iterator addressing the location
   m1_AcIter = m1.end( );
   m1_AcIter--;
   m1_RcIter = m1.find( m1_AcIter -> first );
   cout << "The element of m1 with a key matching "
        << "that of the last element is: "
        << m1_RcIter -> second << "." << endl;
}
  
  
  

Requisiti

intestazione: <map>

Spazio dei nomi: deviazione standard

Vedere anche

Riferimenti

map Class

map::insert, map::find, e map::end

Libreria di modelli standard