描述
C++ 函數std::algorithm::all_of()返回真如果謂詞對範圍內的所有元素返回真第一的至最後的.如果範圍為空,則也返回真,否則返回假。
聲明
以下是 std::algorithm::all_of() 函數形式 std::algorithm 頭文件的聲明。
C++11
template <class InputIterator, class UnaryPredicate> bool all_of (InputIterator first, InputIterator last, UnaryPredicate pred);
參數
first− 將迭代器輸入序列中的初始位置。
last− 將迭代器輸入到序列中的最終位置。
pred- 一個一元謂詞函數,它接受一個元素並返回一個布爾。
返回值
如果謂詞對範圍內的所有元素返回真,或者如果範圍為空,則返回真,否則返回假。
異常
如果謂詞或迭代器上的操作拋出異常,則拋出異常。
請注意無效的參數會導致未定義的行為。
時間複雜度
之間的距離呈線性第一的和最後的。
示例
下麵的例子展示了 std::algorithm::all_of() 函數的用法。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
bool is_even(int n) {
return (n % 2 == 0);
}
int main(void) {
vector<int> v = {2, 4, 6, 8, 10};
bool result;
result = all_of(v.begin(), v.end(), is_even);
if (result == true)
cout << "Vector contains all even numbers." << endl;
v[0] = 1;
result = all_of(v.begin(), v.end(), is_even);
if (result == false)
cout << "Vector doesn't contain all even numbers." << endl;
return 0;
}
讓我們編譯並運行上麵的程序,這將產生以下結果 -
Vector contains all even numbers. Vector doesn't contain all even numbers.
相關用法
- C++ Algorithm adjacent_find()用法及代碼示例
- C++ Algorithm any_of()用法及代碼示例
- C++ Algorithm copy()用法及代碼示例
- C++ Algorithm remove_if()用法及代碼示例
- C++ Algorithm remove()用法及代碼示例
- C++ Algorithm max_element()用法及代碼示例
- C++ Algorithm equal()用法及代碼示例
- C++ Algorithm set_union()用法及代碼示例
- C++ Algorithm next_permutation()用法及代碼示例
- C++ Algorithm upper_bound()用法及代碼示例
- C++ Algorithm minmax()用法及代碼示例
- C++ Algorithm remove_copy_if()用法及代碼示例
- C++ Algorithm find_if_not()用法及代碼示例
- C++ Algorithm for_each()用法及代碼示例
- C++ Algorithm pop_heap()用法及代碼示例
- C++ Algorithm replace_if()用法及代碼示例
- C++ Algorithm replace()用法及代碼示例
- C++ Algorithm set_intersection()用法及代碼示例
- C++ Algorithm transform()用法及代碼示例
- C++ Algorithm set_difference()用法及代碼示例
注:本文由純淨天空篩選整理自 C++ Algorithm Library - all_of() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。