📅  最后修改于: 2020-10-16 07:51:37             🧑  作者: Mango
C++ STL algorithm.any_of()函数对范围中的每个元素测试’pred’的值,如果对于任何元素pred的值为true,则该函数返回true,否则返回false。
template
bool any_of (InputIterator first, InputIterator last, UnaryPredicate pred);
first:它是指定范围内的第一个元素。
last:它是范围中的最后一个元素。
pred:这是一个一元函数,它接受范围内的参数。
该函数具有一种返回类型“ true”。如果参数“ pred”的值对于该范围的任何元素为true,则返回值“ true”,否则为false。
#include
#include
#include
using namespace std;
int main()
{
int arr[7] = {2,4,6,5,10,3,14};
any_of(arr,arr+6, [](int k){return k%2;})?
cout <<"There are elements which exist in the table of 2":
cout<<"No elements in the table of 2 exists";
return 0;
}
输出:
There are elements which exist in the table of 2.
#include
#include
#include
int main()
{
std::array arr = {2,-4,6,-9,10};
if(std::any_of (arr.begin(), arr.end(), [](int k) { return k<0;}))
std::cout <<"Negative elements exist in the array";
return 0;
}
输出:
Negative elements exist in the array
函数从第一个元素开始向最后一个元素线性移动。对于列表中的每个元素,都会检查“ pred”的值。搜索继续进行,直到遇到“ pred”值不匹配的情况。
该函数访问指定范围内的所有对象或其中的一些对象。
如果任何参数抛出一个异常,该函数将引发异常。