名前空間
変種
操作

std::multiplies<void>

提供: cppreference.com
< cpp‎ | utility‎ | functional
 
 
 
関数オブジェクト
関数ラッパー
(C++11)
(C++11)
関数の部分適用
(C++20)
(C++11)
関数呼び出し
(C++17)
恒等関数オブジェクト
(C++20)
参照ラッパー
(C++11)(C++11)
演算子ラッパー
否定子
(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 multiplies<void>;
(C++14以上)

std::multiplies<> は引数と戻り値の型を推定する std::multiplies の特殊化です。

目次

[編集] メンバ型

メンバ型 定義
is_transparent /* unspecified */

[編集] メンバ関数

operator()
2つの引数の積を返します
(パブリックメンバ関数)

std::multiplies<>::operator()

template< class T, class U>

constexpr auto operator()( T&& lhs, U&& rhs ) const

  -> decltype(std::forward<T>(lhs) * std::forward<U>(rhs));

lhsrhs を掛けた結果 (またはオーバーロードされている場合は operator* の結果) を返します。

引数

lhs, rhs - 乗算する値

戻り値

lhs * rhs の結果。

[編集] ノート

メンバ型 is_transparent はこの関数オブジェクトが透過的な関数オブジェクトである、つまり、任意の型の引数を受理し、不均一な分脈や右辺値引数で使用されたときに不要なコピーや変換を回避する完全転送を使用することを、呼び出し元に示します。 特に、 std::set::findstd::set::lower_bound のようなテンプレート関数は Compare 型についてこのメンバ型を使用します。

[編集]