all_of
是 C++ 标准库
all_of
的基本语法如下:
template< class InputIt, class UnaryPredicate >
bool all_of( InputIt first, InputIt last, UnaryPredicate p );
其中:
first
和 last
是要检查的范围的起始和结束迭代器。p
是一个一元谓词,用于测试每个元素是否满足条件。下面是一个使用 all_of
的简单示例,演示了如何检查一个 std::vector<int>
中的所有元素是否都大于 0:
#include<iostream>
#include<vector>
#include<algorithm>
bool is_positive(int n) {
return n > 0;
}
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
bool all_positive = std::all_of(numbers.begin(), numbers.end(), is_positive);
if (all_positive) {
std::cout << "All elements are positive."<< std::endl;
} else {
std::cout << "Not all elements are positive."<< std::endl;
}
return 0;
}
在这个示例中,我们定义了一个名为 is_positive
的辅助函数,用于检查一个整数是否大于 0。然后,我们使用 std::all_of
函数检查 numbers
向量中的所有元素是否都大于 0。如果所有元素都大于 0,程序将输出 “All elements are positive.”,否则将输出 “Not all elements are positive.”。