std::all_of
是 C++ 标准库中的一个算法,用于检查容器或范围内的所有元素是否满足给定的条件。如果所有元素都满足条件,则 std::all_of
返回 true
;否则返回 false
。
函数原型如下:
template< class InputIt, class UnaryPredicate >
bool all_of( InputIt first, InputIt last, UnaryPredicate p );
参数说明:
first
和 last
是要检查的范围的起始和结束迭代器。p
是一个一元谓词,用于测试每个元素是否满足条件。返回值类型:bool
返回值含义:如果范围内的所有元素都使 p
返回 true
,则返回 true
;否则返回 false
。
示例:
#include<iostream>
#include<vector>
#include<algorithm>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
bool all_positive = std::all_of(numbers.begin(), numbers.end(), [](int n) { return n > 0; });
std::cout << "All elements are positive? "<< std::boolalpha<< all_positive<< std::endl; // 输出:All elements are positive? true
return 0;
}