📜  C++中的std :: less_equal及其示例

📅  最后修改于: 2021-05-30 12:19:43             🧑  作者: Mango

std :: less_equals是用于执行比较的函数对象类。它被定义为小于相等比较的函数对象类,该类根据条件返回布尔值。它可以与各种标准算法(例如sort,lower_bound)和容器(例如vector,set等)一起使用。

头文件:

#include 

模板类别:

template  struct less_equal {

  // Declaration of the 
  // less equal operation 
  bool operator() (const T& x,
                   const T& y) 
      const 
  {
     return x<=y;
  }

  // Type of first parameter
  typedef T first_argument_type;

  // Type of second parameter
  typedef T second_argument_type;

  // The result is returned
  // as bool type
  typedef bool result_type;
};

句法:

std::bind2nd(std::less_equal(), K)

参数:此函数接受参数T的类型作为参数,以供功能调用进行比较。

返回类型:根据条件返回布尔值(让a和b为2个元素):

  • 正确:如果a小于等于b。
  • False:如果a大于b。

下面是C++中std :: less_equal的图示:

程序1:

// C++ program to illustrate less_equal
#include 
#include 
#include 
using namespace std;
  
// Function to print the array arr[]
void printArray(int arr[], int N)
{
  
    for (int i = 0; i < N; i++) {
        cout << arr[i] << ' ';
    }
}
  
// Driver Code
int main()
{
    int arr[] = { 1, 5, 8, 9, 6,
                  7, 3, 4, 2, 0 };
  
    int N = sizeof(arr) / sizeof(arr[0]);
  
    // Sort the array in increasing order
    sort(arr, arr + N, less_equal());
  
    // Print sorted array
    printArray(arr, N);
    return 0;
}
输出:
0 1 2 3 4 5 6 7 8 9

程式2:

// C++ program to illustrate less_equal
#include 
#include 
#include 
#include 
using namespace std;
  
// Driver Code
int main()
{
    // Initialise set with less_equal to
    // store the elements in increasing
    // order
    set > S;
  
    // Insert elements in S
    S.insert(75);
    S.insert(30);
    S.insert(60);
    S.insert(20);
    S.insert(50);
    S.insert(30);
  
    // Print the elements stored in set S
    for (auto& it : S) {
        cout << it << ' ';
    }
  
    return 0;
}
输出:
20 30 30 50 60 75

参考: http : //www.cplusplus.com/reference/functional/less_equal/

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