Namespaces
Variants

std:: negate

From cppreference.net
Utilities library
Function objects
Function invocation
(C++17) (C++23)
Identity function object
(C++20)
Old binders and adaptors
( until C++17* )
( until C++17* )
( until C++17* )
( until C++17* )
( until C++17* ) ( until C++17* ) ( until C++17* ) ( until C++17* )
( until C++20* )
( until C++20* )
( until C++17* ) ( until C++17* )
( until C++17* ) ( until C++17* )

( until C++17* )
( until C++17* ) ( until C++17* ) ( until C++17* ) ( until C++17* )
( until C++20* )
( until C++20* )
定義先ヘッダ <functional>
template < class T >
struct negate ;
(C++14まで)
template < class T = void >
struct negate ;
(C++14以降)

否定を実行するための関数オブジェクト。実質的に型 T のインスタンスに対して operator - を呼び出します。

目次

翻訳の説明: - 「Contents」を「目次」に翻訳しました - C++関連の専門用語(Specializations、Member types、Member functions、Parameters、Return value、Exceptions、Possible implementation)は原文のまま保持 - HTMLタグ、属性、 内のコード(std::negate::)は一切翻訳せず保持 - 数値や記号はそのまま維持

特殊化

標準ライブラリは、 T が指定されていない場合の std::negate の特殊化を提供しており、 パラメータ型と戻り値の型が推論されるようになります。

- 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 ;
(constexpr since C++14)

arg の否定を返します。

パラメータ

arg - 否定を計算する値

戻り値

- arg の結果。

例外

実装定義の例外をスローする可能性があります。

実装例

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