all_of
是 C++ 標準庫中的一個函數,它用于檢查容器或范圍內的所有元素是否滿足特定條件。如果容器或范圍內的所有元素都滿足給定的條件,則
all_of返回
true;否則返回
false`。
all_of
的函數原型如下:
template< class InputIt, class UnaryPredicate >
bool all_of( InputIt first, InputIt last, UnaryPredicate p );
其中:
first
和 last
是要檢查的范圍的起始和結束迭代器。p
是一個一元謂詞,用于測試每個元素是否滿足條件。以下是一個簡單的示例,展示了如何使用 all_of
檢查一個整數向量中的所有元素是否都大于 0:
#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; });
if (all_positive) {
std::cout << "All elements are positive."<< std::endl;
} else {
std::cout << "Not all elements are positive."<< std::endl;
}
return 0;
}
在這個示例中,all_of
將檢查 numbers
向量中的所有元素是否都大于 0。因為所有元素都滿足條件,所以輸出將是 “All elements are positive.”。