Spec-Zone.ru › C++

std::negate

Определено в заголовке <functional>
template< class T >
struct negate;
(до C++14)
template< class T = void >
struct negate;
(с C++14)

Объект-функция для выполнения отрицания. Эффективно вызывает operator- для экземпляра типа T.

Специализации

Библиотека стандартных шаблонов предоставляет специализацию std::negate когда T не указано, что оставляет типы параметров и тип возвращаемого значения для вывода.

negate<void>
(C++14)
объект-функция, реализующий -x выводя тип аргумента и тип возвращаемого значения
(специализация шаблона класса)
(с C++14)

Типы членов

Тип Определение
result_type (устарело в C++17)(удалено в C++20) T
argument_type (устарело в C++17)(удалено в C++20) T

Эти типы членов получаются посредством публичного наследования std::unary_function<T, T>.

(до C++11)

Члены-функции

operator()
возвращает отрицание аргумента
(публичная функция-член)

std::negate::operator()

T operator()( const T& arg ) const;
(до C++14)
constexpr T operator()( const T& arg ) const;
(с C++14)

Возвращает отрицание arg.

Параметры

arg - значение для вычисления отрицания

Значение возврата

Результат -arg.

Исключения

Может выбросить исключения, определённые реализацией.

Возможная реализация

constexpr T operator()(const T& arg) const 
{
    return -arg;
}

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

Spec-Zone.ru

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