Материал из cppreference.com
<tbody>
</tbody>
<tbody class="t-dcl-rev ">
</tbody><tbody>
</tbody>
| template< class T > struct logical_not;
|
|
(до C++14) |
| template< class T = void > struct logical_not;
|
|
(начиная с C++14) |
| | |
Функциональный объект для выполнения логического НЕ (логического отрицания). Эффективно вызывает operator! для типа T.
Специализации
|
Стандартная библиотека предоставляет специализацию std::logical_not, где T не указан, что оставляет типы параметров и тип возвращаемого значения для вывода.
|
|
объект функции, реализующий !x с выводом типов аргументов и возвращаемого значения (специализация шаблона класса) [править]
|
|
(начиная с C++14) |
Типы элементы
|
|
| Тип
|
Определение
|
result_type (устарело в C++17)(удалено в C++20)
|
bool
|
argument_type (устарело в C++17)(удалено в C++20)
|
T
|
|
Эти типы элементы получаются путём открытого наследования std::unary_function<T, bool>.
|
(до C++11) |
Функции-элементы
|
|
возвращает логическое НЕ аргумента (public функция-элемент)
|
std::logical_not::operator()
<tbody>
</tbody>
<tbody class="t-dcl-rev ">
</tbody><tbody>
</tbody>
| bool operator()( const T& arg ) const;
|
|
(до C++14) |
| constexpr bool operator()( const T& arg ) const;
|
|
(начиная с C++14) |
| | |
Возвращает логическое НЕ arg.
Параметры
| arg
|
—
|
значение для вычисления логического НЕ
|
Возвращаемое значение
Результат !arg.
Исключения
Может генерировать исключения, определённые реализацией.
Возможная реализация
constexpr // начиная с C++14
bool operator()(const T &arg) const
{
return !arg;
}
|