名稱空間
變體
操作

std::negate

來自 cppreference.com
 
 
 
函式物件
函式呼叫
(C++17)(C++23)
恆等函式物件
(C++20)
透明運算子包裝器
(C++14)
(C++14)
(C++14)
(C++14)  
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)

舊繫結器和介面卡
(直到 C++17*)
(直到 C++17*)
(直到 C++17*)
(直到 C++17*)  
(直到 C++17*)
(直到 C++17*)(直到 C++17*)(直到 C++17*)(直到 C++17*)
(直到 C++20*)
(直到 C++20*)
(直到 C++17*)(直到 C++17*)
(直到 C++17*)(直到 C++17*)

(直到 C++17*)
(直到 C++17*)(直到 C++17*)(直到 C++17*)(直到 C++17*)
(直到 C++20*)
(直到 C++20*)
 
定義於標頭檔案 <functional>
template< class T >
struct negate;
(直到 C++14)
template< class T = void >
struct negate;
(C++14 起)

用於執行取反的函式物件。實際上呼叫型別 T 例項上的 operator-

目錄

[編輯] 特化

當未指定 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;
(C++14 起為 constexpr)

返回 arg 的負值。

引數

arg - 要計算負值的值

返回值

-arg 的結果。

[編輯] 異常

可能丟擲實現定義的異常。

可能的實現

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