find (<algorithm>)
Busque la posición de la primera aparición de un elemento en un intervalo con un valor especificado.
template<class InputIterator, class Type>
InputIterator find(
InputIterator _First,
InputIterator _Last,
const Type& _Val
);
Parámetros
_First
Un iterador de entrada que dirige la posición del primer elemento del intervalo que se va por el valor especificado._Last
Un iterador de entrada que dirige la posición una más allá del último elemento en el intervalo que se va por el valor especificado._Val
El valor que se va a buscar.
Valor devuelto
Un iterador de entrada que dirige la primera aparición del valor especificado en el intervalo que se busca.Si dicho valor existe en el intervalo, el iterador devuelto dirige la posición del intervalo, una más allá del elemento final.
Comentarios
operator== utilizado para determinar la coincidencia entre un elemento y el valor especificado debe imponer una relación de equivalencia entre sus operandos.
Ejemplo
// 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;
}
Output
L = ( 40 20 10 30 10 )
There is a 10 in list L and it is followed by a 30.
Requisitos
encabezado: <algoritmo>
espacio de nombres: std