find (<algorithm>)

Localiza a posição da primeira ocorrência de um elemento em um intervalo que tem um valor especificado.

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

Parâmetros

  • _First
    Um iterador de entrada que trata a posição do primeiro elemento no intervalo ser procurado no valor especificado.

  • _Last
    Um iterador de entrada que trata a posição uma após o elemento final no intervalo ser procurado no valor especificado.

  • _Val
    O valor a ser procurado.

Valor de retorno

Um iterador de entrada que trata a primeira ocorrência de valor especificado no intervalo que está sendo pesquisado.Se nenhum tal valor existe no intervalo, o iterador retornado aborda a posição a mais recente do intervalo, uma após o elemento final.

Comentários

operator== usado para determinar a correspondência entre um elemento e o valor especificado deve impor uma relação de equivalência entre os operandos.

Exemplo

// 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;
}

Saída

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

Requisitos

Cabeçalho: <algorithm>

namespace: STD

Consulte também

Referência

find (STL Samples)

Standard Template Library