std::less_equal
Определён в заголовочном файле <functional> | ||
|---|---|---|
template< class T > struct less_equal; | (до C++14) | |
template< class T = void > struct less_equal; | (начиная с C++14) |
Функциональный объект для выполнения сравнений. Основной шаблон вызывает operator<= для типа T.
Специализации
|
(C++14) | функциональный объект, реализующий x <= y с выводом типов параметров и возвращаемого значения (специализация шаблона класса) |
Типы-члены
| Тип | Определение |
|---|---|
result_type (устарел в C++17)(удалён в C++20) | bool |
first_argument_type (устарел в C++17)(удалён в C++20) |
T |
second_argument_type (устарел в C++17)(удалён в C++20) |
T |
| Эти типы-члены получены посредством открытого наследования от std::binary_function<T,T,bool>. | (до C++11) |
Функции-члены
|
operator() | проверяет, меньше ли первый аргумент второго или равен ему (открытая функция-член) |
std::less_equal::operator()
bool operator()( const T& lhs, const T& rhs ) const; | (constexpr начиная с C++14) |
Проверяет, меньше ли lhs rhs или равен ему.
Параметры
| lhs, rhs | - | сравниваемые значения |
Возвращаемое значение
lhs <= rhs.
Если T является типом указателя, результат согласуется с определяемым реализацией строгим полным порядком для указателей.
Исключения
Может генерировать исключения, определяемые реализацией.
Возможная реализация
constexpr bool operator()(const T& lhs, const T& rhs) const
{
return lhs <= rhs; // assumes that the implementation handles pointer total order
}
|
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.
| Отчёт об ошибке | Применяется к | Поведение согласно опубликованному стандарту | Корректное поведение |
|---|---|---|---|
| LWG 2562 | C++98 | полный порядок указателей мог быть несогласованным | гарантированно согласован |
См. также
функциональный объект, реализующий x < y (шаблон класса) |
|
|
(C++20) | ограниченный функциональный объект, реализующий x <= y (класс) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/functional/less_equal