📅  最后修改于: 2023-12-03 14:59:51.961000             🧑  作者: Mango
bost::algorithm::any_of_equal() 是C++库 Boost 中的一个函数,被用于搜索一个范围内的元素是否出现于某个列表(序列)内。它的主要作用是判断一个元素是否属于列表中的任何一个元素。此函数用于对任何类型的集合(比如数组/ vector/ list)执行一段特定的操作。
template<typename Range, typename ValueT>
bool any_of_equal(const Range &r, const ValueT &val);
其中,
函数返回值是一个 boolean 值,函数将返回 true
若在 r
内的元素存在若相等于 val
,否则返回 false
。
#include <boost/algorithm/cxx11/any_of_equal.hpp>
#include <iostream>
#include <vector>
int main()
{
std::vector<int> vector1 = { 1, 2, 3, 4, 5 };
if (boost::algorithm::any_of_equal(vector1, 3))
{
std::cout << "3 exists in vector1." << std::endl;
}
if (boost::algorithm::any_of_equal(vector1, 10))
{
std::cout << "10 exists in vector1." << std::endl;
}
return 0;
}
本代码将会输出:
3 exists in vector1.
In the first if
statement,函数会返回 true
,因为 3
存在于 vector1
中。在第二个 if
语句中,函数将返回 false
,因为 10
并不存在于 vector1
中。
函数 boost::algorithm::any_of_equal() 是 Boost 库中十分有用的函数之一。它可以判断一个范围内的元素是否出现于某个列表(序列)内。它的使用方法非常简单,只需要给它传递列表和元素,它便可以告诉你它们之间的关系:是否相等,存在等等。