当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ std::less_equal用法及代码示例


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

头文件:

#include <functional.h>

模板类别:

template <class T> 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。
  • 假:如果a大于b。

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

程序1:

// C++ program to illustrate less_equal 
#include <algorithm> 
#include <functional> 
#include <iostream> 
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<int>()); 
  
    // 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 <functional> 
#include <iostream> 
#include <iterator> 
#include <set> 
using namespace std; 
  
// Driver Code 
int main() 
{ 
    // Initialise set with less_equal to 
    // store the elements in increasing 
    // order 
    set<int, less_equal<int> > 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/




相关用法


注:本文由纯净天空筛选整理自prajakta_mane大神的英文原创作品 std::less_equal in C++ with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。