find_if_not

返回指示的范围中不满足条件的第一个元素。

template<class InputIterator, class Predicate> InputIterator find_if_not(InputIterator first, InputIterator last,        Predicate pred);

参数

  • first
    用于确定要搜索范围中的第一个元素的位置的输入迭代器。

  • last
    用于确定要搜索范围中最后元素之后下一个元素的位置的输入迭代器。

  • pred
    用于定义要搜索元素不满足条件的用户定义谓词函数对象或 lambda 表达式。 谓词采用单个参数并返回 true(满足条件)或 false(不满足条件)。 pred 的签名必须是有效的 bool pred(const T& arg);,其中,T 是 InputIterator 在取消引用时可隐式转换为的类型。 显示 const 关键字的目的仅为说明函数对象或 lambda 不应修改参数。

返回值

用于引用范围中不满足由谓词指定的条件(谓词产生的结果为 false)的第一个元素的输入迭代器。 如果所有元素均满足该谓词(对于每个元素,谓词产生的结果为 true),并返回 last。

备注

此模板函数是算法 find 的泛化,它将“等于指定值”谓词替换为任何谓词。 有关逻辑相反(找到不满足谓词的第一个元素),请参阅 find_if

有关易于适应 find_if_not() 的代码示例的信息,请参阅 find_if

要求

标头:<algorithm>

命名空间: std

请参见

参考

<algorithm>

adjacent_find

find (STL)

find_if

find_end

mismatch

search