const_mem_fun1_ref_t クラス
参照引数による初期化を行うときに、1 つの引数を使用する const
メンバー関数を二項関数オブジェクトとして呼び出せるようにするアダプター クラス。 C++ 11 で非推奨となり、C++ 17 で削除されています。
構文
template <class Result, class Type, class Arg>
class const_mem_fun1_ref_t
: public binary_function<Type, Arg, Result>
{
explicit const_mem_fun1_ref_t(Result (Type::* Pm)(Arg) const);
Result operator()(const Type& left, Arg right) const;
};
パラメーター
Pm
関数オブジェクトに変換されるクラス Type
のメンバー関数へのポインター。
left
_Pm メンバー関数が呼び出される const
オブジェクト。
right
Pm に渡される引数。
戻り値
適合可能な二項関数。
解説
このクラス テンプレートは Pm のコピーをプライベート メンバー オブジェクトに格納します。これは、Type
クラスのメンバー関数へのポインターである必要があります。 そのメンバー関数 operator()
は、(left
.* Pm)(right
) const
を返すように定義されています。
例
const_mem_fun1_ref_t
のコンストラクターは通常は直接使用されません。ヘルパー関数 mem_fun_ref
を使用してメンバー関数を適合させます。 メンバー関数アダプターの使用例については、「mem_fun_ref」を参照してください。