Freigeben über


multimap::find

Gibt einen Iterator zurück, der den ersten Position eines Elements in einer Multimap behandelt, die eine Schlüsselentsprechung zu einem angegebenen Schlüssel verfügt.

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

Parameter

  • _Key
    Die durch den Sortierschlüssel eines Elements aus der Multimap verglichen werden, Schlüssel, die gesucht wird.

Rückgabewert

Ein Iterator, der den ersten Position eines Elements mit einem angegebenen Schlüssel behandelt oder der Speicherort, der dem letzten Element mit der Multimap folgt, wenn keine Übereinstimmung für die Schlüssel gefunden wird.

Hinweise

Die Memberfunktion gibt einen Iterator zurück, der ein Element in der Multimap abweicht, deren Sortierschlüssel äquivalent zum Argumentschlüssel unter einem binären Prädikat ist, das eine Reihenfolge auf Grundlage weniger als Vergleichbarkeitsbeziehung verursacht.

Wenn const_iterator der Rückgabewert von find zugewiesen wird, kann das multimap-Objekt nicht geändert werden.Wenn Iterator der Rückgabewert von find zugewiesen wird, kann das multimap-Objekt geändert werden.

Beispiel

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

int main( )
{
   using namespace std;
   multimap <int, int> m1;
   multimap <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, 20 ) );
   m1.insert ( Int_Pair ( 3, 30 ) );

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

   m1_RcIter = m1.find( 3 );
   cout << "The first element of multimap m1 with a key of 3 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 multimap m1 doesn't have an element "
           << "with a key of 4." << endl;
   else
      cout << "The element of multimap m1 with a key of 4 is: "
           << m1_RcIter -> second << "." << endl;

   // The element at a specific location in the multimap 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 first element of m1 with a key matching"
        << endl << "that of the last element is: "
        << m1_RcIter -> second << "." << endl;

   // Note that the first element with a key equal to
   // the key of the last element is not the last element
   if ( m1_RcIter == --m1.end( ) )
      cout << "This is the last element of multimap m1."
           << endl;
   else
      cout << "This is not the last element of multimap m1."
           << endl;
}
  
  
  
  
  

Anforderungen

Header: <map>

Namespace: std

Siehe auch

Referenz

multimap Class

Standardvorlagenbibliothek