From cppreference.com
structgreater_equal;(since C++20)Function object for performing comparisons. Deduces the parameter types of the function call operator from the arguments (but not the return type).
Nested types
Member functions
operator()
checks if the first argument is greater than or equal to the second
(public member function)std::ranges::greater_equal::operator()
template<classT,classU>constexprbooloperator()(T&&t,U&&u)const;Equivalent to return!ranges::less{}(std::forward<T>(t),std::forward<U>(u));.
This overload participates in overload resolution only if std::totally_ordered_with<T,U> is satisfied.
Notes
Unlike
, std::ranges::greater_equal requires all six comparison operators <, <=, >, >=, == and != to be valid (via the
constraint) and is entirely defined in terms of std::ranges::less.
Example
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR Applied to Behavior as published Correct behavior
C++20 syntactic checks were relaxed while comparing pointers only semantic requirements are relaxed See also