An input iterator that indicates the start of a range to check for a condition.
An input iterator that indicates the end of a range.
The condition to test for. This is provided by a user-defined predicate function object that defines the condition to be satisfied by the element being searched for. A predicate takes a single argument and returns true or false.
The template function determines the lowest value of N in the range [0, _Last - _First) for which the predicate _Comp(*(_First + N)) is false. It then returns _First + N. If no such value exists, the function returns _Last. It evaluates the predicate one time at most for each N.