Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C++ 教程

C++ 主页 C++ 简介 C++ 入门 C++ 语法 C++ 输出 C++ 注释 C++ 变量 C++ 用户输入 C++ 数据类型 C++ 运算符 C++ 字符串 C++ 数学 C++ 布尔值 C++ if...Else C++ Switch C++ While 循环 C++ For 循环 C++ Break/Continue C++ 数组 C++ 结构体 C++ 枚举 C++ 引用 C++ 指针

C++ 函数

C++ 函数 C++ 函数参数 C++ 函数重载 C++ 范围 C++ 递归

C++ 类

C++ 面向对象编程 C++ 类/对象 C++ 类方法 C++ 构造函数 C++ 访问修饰符 C++ 封装 C++ 继承 C++ 多态 C++ 文件 C++ 异常 C++ 日期

C++ 数据结

C++ 数据结构 & STL C++ 向量 C++ 列表 C++ 栈 C++ 队列 C++ 双端队列 C++ 集合 C++ 映射 C++ 迭代器 C++ 算法

C++ 如何

C++ 加两个数 C++ 随机数

C++ 参考

C++ 参考 C++ 关键字 C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime> C++ <vector> C++ <algorithm>

C++ 例子

C++ 例子 C++ 现实生活中的例子 C++ 编译器 C++ 练习 C++ 测验 C++ 证书


C++ 算法 find_if() 函数

❮ 算法函数


例子

在向量中查找大于 5 的值

bool greater_than_5(int value) {
  return value > 5;
}

int main() {
  vector<int> numbers = {1, 7, 3, 5, 9, 2};
  auto it = find_if(numbers.begin(), numbers.end(), greater_than_5);
  if (it != numbers.end()) {
    cout << "The number " << *it << " is greater than 5.";
  } else {
    cout << "No numbers greater than 5 were found.";
  }
  
  return 0;
}
自己尝试 »

定义和用法

The find_if() 函数返回一个迭代器,指向数据范围内第一个匹配指定条件的值。如果没有任何值匹配条件,则它返回指向数据范围末尾的迭代器。

数据范围由迭代器指定。

条件由一个函数指定,该函数以元素的值作为参数,并返回一个布尔值,如果条件匹配则为 1,如果条件不匹配则为 0。

语法

find_if( iterator start, iterator end, function condition );

参数值

参数 描述
start 必需。指向要搜索的数据范围开头的迭代器。
end 必需。指向要搜索的数据范围末尾的迭代器。将搜索到此位置之前的元素,但不会包含此位置的元素。
condition 必需。一个函数,它以数据范围中元素的值作为参数,并返回一个布尔值。

技术细节

返回值 指向数据范围内第一个匹配指定条件的值的迭代器,或者如果没有任何值匹配条件,则指向数据范围末尾的迭代器。

相关页面

在我们的 数据结构教程 中了解更多关于数据结构的信息。

在我们的 迭代器教程 中了解更多关于迭代器的信息。

在我们的 算法教程 中了解更多关于算法的信息。

在我们的 布尔值教程 中了解更多关于布尔值的信息。


❮ 算法函数

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.