📜  C++库中的boost :: algorithm :: all_of_equal()

📅  最后修改于: 2021-05-30 09:10:13             🧑  作者: Mango

C++ Boost库中all_of_equal()函数位于标头‘boost / algorithm / cxx11 / all_of.hpp’下,该标头针对参数中传递的值测试序列中的所有元素,如果序列中的所有元素都返回true都一样它接受一个序列和一个值,如果序列中的所有元素都相同,则返回true。

语法

参数:该函数接受如下所述的参数:

  • first :它指定输入迭代器到序列中的初始位置。
  • second :它指定输入迭代器到序列中的最终位置。
  • value :它指定一个值,该值将针对序列的所有元素进行检查。
  • R :这是完整的序列。

返回值:如果序列中的所有元素都等于value,则该函数返回true,否则返回false。

下面是上述方法的实现:

计划1

// C++ program to implement the
// above mentioned function
  
#include 
#include 
using namespace std;
  
// Drivers code
int main()
{
  
    // Declares the sequence with
    // 5 length and all elements as 1
    // [1, 1, 1, 1, 1]
    vector c(5, 1);
  
    // Run the function
    bool ans
        = boost::algorithm::all_of_equal(c, 1);
  
    // Condition to check
    if (ans == 1)
        cout << "ALl elements are 1";
    else
        cout << "All elements are not 1";
    return 0;
}
输出:
ALl elements are 1

计划2

// C++ program to implement the
// above mentioned function
  
#include 
#include 
using namespace std;
  
// Drivers code
int main()
{
  
    // Declares the sequence
    int a[] = { 1, 2, 5, 6 };
  
    // Run the function
    bool ans
        = boost::algorithm::all_of_equal(a, a + 4, 4);
  
    // Condition to check
    if (ans == 1)
        cout << "ALl elements are 4";
    else
        cout << "All elements are not 4";
    return 0;
}
输出:
All elements are not 4

参考:https://www.boost.org/doc/libs/1_70_0/libs/algorithm/doc/html/algorithm/CXX11.html#the_boost_algorithm_library.CXX11.all_of

要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”