std::logical_not
Определён в заголовочном файле <functional> | ||
|---|---|---|
template< class T > struct logical_not; | (до C++14) | |
template< class T = void > struct logical_not; | (начиная с C++14) |
Функциональный объект для выполнения логического НЕ (логического отрицания). Фактически вызывает operator! для типа T.
Специализации
| Стандартная библиотека предоставляет специализацию
| (начиная с C++14) |
Типы-члены
| Тип | Определение |
|---|---|
result_type (устарело в C++17)(удалено в C++20) | bool |
argument_type (устарело в C++17)(удалено в C++20) |
T |
| Эти типы-члены получены посредством публичного наследования от std::unary_function<T,bool>. | (до C++11) |
Функции-члены
|
operator() | возвращает логическое НЕ аргумента (открытая функция-член) |
std::logical_not::operator()
bool operator()( const T& arg ) const; | (constexpr начиная с C++14) |
Возвращает логическое НЕ от arg.
Параметры
| arg | - | значение, для которого вычисляется логическое НЕ |
Возвращаемое значение
Результат !arg.
Исключения
Может выбрасывать исключения, определяемые реализацией.
Возможная реализация
constexpr // since C++14
bool operator()(const T& arg) const
{
return !arg;
}
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/functional/logical_not