std::all_of
是 C++ 標準庫中的一個算法,用于檢查容器或范圍內的所有元素是否滿足給定的條件。這個函數需要三個參數:起始迭代器、結束迭代器和一個斷言(通常是一個 lambda 函數或者一個函數對象)。
下面是 std::all_of
的一個基本示例:
#include<iostream>
#include<vector>
#include<algorithm>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
// 使用 lambda 函數檢查所有元素是否大于 0
bool all_positive = std::all_of(numbers.begin(), numbers.end(), [](int n) { return n > 0; });
if (all_positive) {
std::cout << "All numbers are positive."<< std::endl;
} else {
std::cout << "Not all numbers are positive."<< std::endl;
}
return 0;
}
在這個示例中,我們創建了一個包含整數的向量,并使用 std::all_of
來檢查向量中的所有元素是否都大于 0。如果所有元素都滿足條件,程序將輸出 “All numbers are positive.”,否則輸出 “Not all numbers are positive.”。
注意,如果容器為空,std::all_of
將返回 true,因為沒有元素不滿足給定的條件。