find_if man page on Solaris

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
Solaris logo
[printable version]

find_if(3C++)			       -			 find_if(3C++)

Standard C++ Library Copyright 1998, Rogue Wave Software, Inc.

NAME
       find_if

	- Finds an occurrence of a value in a sequence that satisfies a speciā€
       fied predicate.

SYNOPSIS
       #include <algorithm>
       template <class InputIterator, class Predicate>
 InputIterator find_if(InputIterator first,
		       InputIterator last,
		       Predicate pred);

DESCRIPTION
       The find_if algorithm allows you to search for the first element	 in  a
       sequence that satisfies a particular condition. The sequence is defined
       by iterators first and last, while the  condition  is  defined  by  the
       third  argument:	 a  predicate  function	 that returns a boolean value.
       find_if returns the first iterator i in the  range  [first,  last)  for
       which the following condition holds:

       pred(*i) == true.

       If no such iterator is found, find_if returns last.

COMPLEXITY
       find_if	performs  at most last-first applications of the corresponding
       predicate.

EXAMPLE
/
// find.cpp
//
#include <vector>
#include <algorithm>
#include <functional>
#include <iostream>
using namespace std;

int main()
 {
  typedef vector<int>::iterator iterator;
  int d1[10] = {0,1,2,2,3,4,2,2,6,7};

   // Set up a vector
  vector<int> v1(d1,d1 + 10);

   // Try find
  iterator it1 = find(v1.begin(),v1.end(),3);
   // it1 = v1.begin() + 4;

   // Try find_if
  iterator it2 =
    find_if(v1.begin(),v1.end(),bind1st(equal_to<int>(),3));
   // it2 = v1.begin() + 4

   // Try both adjacent_find variants
  iterator it3 = adjacent_find(v1.begin(),v1.end());
   // it3 = v1.begin() +2

  iterator it4 =
     adjacent_find(v1.begin(),v1.end(),equal_to<int>());
   // v4 = v1.begin() + 2

   // Output results
  cout << *it1 << " " << *it2 << " " << *it3 << " "
	<< *it4 << endl;

  return 0;
 }

Program Output

3 3 2 2

WARNINGS
       If your compiler does not support default template parameters, then you
       always  need  to	 supply the Allocator template argument. For instance,
       you have to write:

       vector<int, allocator<int> >

       instead of:

       vector<int>

       If your compiler does not support namespaces, then you do not need  the
       using declaration for std.

SEE ALSO
       adjacent_find, Algorithms, find, find_end, find_first_of

Rogue Wave Software		  02 Apr 1998			 find_if(3C++)
[top]

List of man pages available for Solaris

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net