📜  C++中的std :: none_of(1)

📅  最后修改于: 2023-12-03 15:14:03.016000             🧑  作者: Mango

C++中的std :: none_of

在C++的STL函数库中,std::none_of函数是一个非常有用的函数。它可以帮助我们在一定范围内判断是否不存在满足某个条件的元素。

语法

std::none_of的语法如下:

template<class InputIt, class UnaryPredicate>
bool none_of(InputIt first, InputIt last, UnaryPredicate p);

其中,参数first和last指定了要检查的范围的开始和结束,而参数p是一个用于判断元素是否符合条件的函数。

使用示例

下面是一个简单的示例,来展示如何使用std::none_of函数:

#include <algorithm>
#include <iostream>
#include <vector>

int main()
{
    std::vector<int> vec = {1, 2, 3, 4, 5};

    if (std::none_of(vec.begin(), vec.end(), [](int i) {return i > 6;}))
    {
        std::cout << "There are no elements greater than 6." << std::endl;
    }

    return 0;
}

在这个示例中,我们使用了std::none_of来判断容器vec中是否有元素大于6。由于vec中的所有元素都小于等于6,因此std::none_of返回true,输出一条消息。

返回值

如果范围[first, last)中不存在满足谓词p的元素,则std::none_of返回true;否则返回false。

总结

std::none_of是一个非常有用的函数,可以帮助我们判断一定范围内是否不存在满足某个条件的元素。如果没有符合条件的元素,就会返回true,否则返回false。这是C++ STL中许多函数中非常常用的一种。