std::rel_ops::operator!=,>,<=,>= (3) - Linux Manuals
std::rel_ops::operator!=,>,<=,>=: std::rel_ops::operator!=,>,<=,>=
NAME
std::rel_ops::operator!=,>,<=,>= - std::rel_ops::operator!=,>,<=,>=
Synopsis
Defined in header <utility>
template< class T > (1) (deprecated in C++20)
bool operator!=( const T& lhs, const T& rhs );
template< class T > (2) (deprecated in C++20)
bool operator>( const T& lhs, const T& rhs );
template< class T > (3) (deprecated in C++20)
bool operator<=( const T& lhs, const T& rhs );
template< class T > (4) (deprecated in C++20)
bool operator>=( const T& lhs, const T& rhs );
Given a user-defined operator== and operator< for objects of type T, implements the usual semantics of other comparison operators.
1) Implements operator!= in terms of operator==.
2) Implements operator> in terms of operator<.
3) Implements operator<= in terms of operator<.
4) Implements operator>= in terms of operator<.
Parameters
lhs - left-hand argument
rhs - right-hand argument
Return value
1) Returns true if lhs is not equal to rhs.
2) Returns true if lhs is greater than rhs.
3) Returns true if lhs is less or equal to rhs.
4) Returns true if lhs is greater or equal to rhs.
Possible implementation
First version
Second version
Third version
Fourth version
Notes
Boost.operators provides a more versatile alternative to std::rel_ops
As of C++20, std::rel_ops are deprecated in favor of operator<=>.
Example
// Run this code
Output: