From Cppreference
|
|
|
|
|
template< class T > bool operator<=( const T& lhs, const T& rhs );
|
|
|
|
|
Given a user-defined operator< for objects of type T, implements the usual semantics of operator<=.
[edit] Parameters
lhs
|
-
|
left-hand argument
|
rhs
|
-
|
right-hand argument
|
[edit] Return value
Returns true if lhs is less or equal rhs, false otherwise.
[edit] Equivalent function
namespace rel_ops {
template< class T >
bool operator>( const T& lhs, const T& rhs ) {
return !(rhs<lhs);
}
}
|
[edit] Example
#include <iostream>
#include <utility>
struct Foo {
int n;
};
bool operator<(const Foo& lhs, const Foo& rhs)
{
return lhs.n < rhs.n;
}
int main()
{
Foo f1 = {1};
Foo f2 = {2};
using namespace std::rel_ops;
if(f1 <= f2)
std::cout << "Less or equal\n";
}
Output:
[edit] See also
|
|
automatically generated operator!= based on user-defined operator== (function template)
|
|
|
automatically generated operator> based on user-defined operator< (function template)
|
|
|
automatically generated operator<= based on user-defined operator< (function template)
|