Spec-Zone.ru › C++

std::ranges::greater

Определён в заголовочном файле <functional>
struct greater;
(начиная с C++20)

Функциональный объект для выполнения сравнений. Выводит типы параметров оператора вызова функции из аргументов (но не тип возвращаемого значения).

Вложенные типы

Вложенный тип Определение
is_transparent не указано

Функции-члены

operator()
проверяет, больше ли первый аргумент второго
(открытая функция-член)

std::ranges::greater::operator()

template< class T, class U >
constexpr bool operator()( T&& t, U&& u ) const;

Эквивалентно return ranges::less{}(std::forward<U>(u), std::forward<T>(t));.

Эта перегрузка участвует в разрешении перегрузки только в том случае, если выполнено условие std::totally_ordered_with<T, U>.

Примечания

В отличие от std::greater, std::ranges::greater требует, чтобы все шесть операторов сравнения <, <=, >, >=, == и != были допустимы (в соответствии с ограничением totally_ordered_with), и полностью определяется через std::ranges::less.

Пример

Отчёты об ошибках

Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.

Отчёт об ошибке Применяется к Поведение в опубликованной редакции Правильное поведение
LWG 3530 C++20 синтаксические проверки были ослаблены при сравнении указателей ослаблены только семантические требования

См. также

greater
функциональный объект, реализующий x > y
(шаблон класса)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/functional/ranges/greater

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API