次の方法で共有


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」を参照してください。