Partager via


find (<algorithm>)

Recherche la position de la première occurrence d'un élément dans une plage qui a une valeur spécifiée.

template<class InputIterator, class Type>
   InputIterator find(
      InputIterator _First, 
      InputIterator _Last, 
      const Type& _Val
   );

Paramètres

  • _First
    Un itérateur d'entrée adressant la position du premier élément de la plage pour rechercher la valeur spécifiée.

  • _Last
    Un itérateur d'entrée adressant une position au delà de le dernier élément dans la plage pour rechercher la valeur spécifiée.

  • _Val
    La valeur à rechercher.

Valeur de retour

Un itérateur d'entrée adressant la première occurrence de la valeur spécifiée dans l'intervalle recherché.Si aucune valeur n'existe dans la plage, l'itérateur retourné adresse la dernière position de la plage, une au delà de le dernier élément.

Notes

operator== utilisé pour déterminer la correspondance entre un élément et la valeur spécifiée doit appliquer une relation d'équivalence entre ses opérandes.

Exemple

// alg_find.cpp
// compile with: /EHsc 
#include <list>
#include <algorithm>
#include <iostream>

int main() {
   using namespace std;

   list <int> L;
   list <int>::iterator Iter;
   list <int>::iterator result;
   
   L.push_back( 40 );
   L.push_back( 20 );
   L.push_back( 10 );
   L.push_back( 30 );
   L.push_back( 10 );

   cout << "L = ( " ;
   for ( Iter = L.begin( ) ; Iter != L.end( ) ; Iter++ )
      cout << *Iter << " ";
   cout << ")" << endl;
   
   result = find( L.begin( ), L.end( ), 10 );
   if  ( result == L.end( ) )
      cout << "There is no 10 in list L.";
   else {
      cout << "There is a 10 in list L";
      if ( ++result != L.end() )
         cout << " and it is followed by a " << *result << ".";
   }
   cout << endl;
}

Sortie

L = ( 40 20 10 30 10 )
There is a 10 in list L and it is followed by a 30.

Configuration requise

en-tête : <algorithm>

l'espace de noms : DST

Voir aussi

Référence

find (STL Samples)

Modèles Standard