#include <algorithm>
template< class InputIt, class UnaryPredicate >
bool all_of( InputIt first, InputIt last, UnaryPredicate p );
「若一元谓词对范围中所有元素返回true则为true ,否则为false。若范围为空则返回true」。
template< class InputIt, class UnaryPredicate >
bool any_of( InputIt first, InputIt last, UnaryPredicate p );
「若一元谓词对范围中至少一个元素返回true则为true ,否则为false。若范围为空则返回false」。
template< class InputIt, class UnaryPredicate >
bool none_of( InputIt first, InputIt last, UnaryPredicate p );
「若一元谓词不对范围中任何元素返回true则为true ,否则为false。若范围为空则返回true」。
#include <algorithm>
#include <vector>
int main(int argc, char *argv[])
{
std::vector<int> v{1, 2, 3, 4, 5};
if (std::all_of(v.cbegin(), v.cend(), [](int i){ return i % 2 == 0; })) {
/* 条件成立,所有数都是偶数 */
}
}