當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ boost::algorithm::equal()用法及代碼示例


在標頭“ boost /algorithm /cxx11 /equal.hpp”測試下的C++ Boost庫中的equal()函數可以查看兩個序列是否包含相等的值。它返回一個布爾值,該值確定兩個序列是否相同。

用法

bool equal ( InputIterator1 first1, InputIterator1 second1,
                  InputIterator2 first2, InputIterator2 second2 )
or 
bool equal ( InputIterator1 first1, InputIterator1 second1,
             InputIterator2 first2, InputIterator2 second2, 
             BinaryPredicate pred )

參數:該函數接受如下所述的參數:



  • first1:它指定輸入迭代器到第一個序列中的初始位置。
  • second1:它指定輸入迭代器到第一個序列中的最終位置。
    • first2:它指定輸入迭代器到第二個序列中的初始位置。
    • second2:它指定輸入迭代器到第二個序列的最終位置。
    • p:如果指定,則指定比較謂詞。

    返回值:如果兩個序列相同,則該函數返回true,否則返回false。

    Note:以上函數在C++ 14及更高版本上運行。

    Program-1

    // C++ program to implement the 
    // above mentioned function 
      
    #include <bits/stdc++.h> 
    #include <boost/algorithm/cxx14/equal.hpp> 
    using namespace std; 
      
    // Drivers code 
    int main() 
    { 
      
        // Declares the sequences 
        int a[] = { 1, 2, 5, 6, 8 }; 
      
        int b[] = { 1, 2, 5, 6, 8 }; 
      
        // Run the function 
        bool ans 
            = boost::algorithm::equal(a, a + 5, b, b + 5); 
      
        // Condition to check 
        if (ans == 1) 
            cout << "Sequence1 and Sequence2 are equal"; 
        else
            cout << "Sequence1 and Sequence2 are not equal"; 
        return 0; 
    }
    輸出:
    Sequence1 and Sequence2 are equal
    

    Program-2

    // C++ program to implement the 
    // above mentioned function 
      
    #include <bits/stdc++.h> 
    #include <boost/algorithm/cxx14/equal.hpp> 
    using namespace std; 
      
    // Drivers code 
    int main() 
    { 
      
        // Declares the sequences 
        int a[] = { 1, 2, 5, 6, 8 }; 
      
        int b[] = { 1, 2, 5 }; 
      
        // Run the function 
        bool ans 
            = boost::algorithm::equal(a, a + 5, b, b + 5); 
      
        // Condition to check 
        if (ans == 1) 
            cout << "Sequence1 and Sequence2 are equal"; 
        else
            cout << "Sequence1 and Sequence2 are not equal"; 
        return 0; 
    }
    輸出:
    Sequence1 and Sequence2 are not equal
    

    Reference:https://www.boost.org/doc/libs/1_70_0/libs/algorithm/doc/html/algorithm/CXX14.html#the_boost_algorithm_library.CXX14.equal




相關用法


注:本文由純淨天空篩選整理自gopaldave大神的英文原創作品 boost::algorithm::equal() in C++ library。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。