Share via


mem_fun_t クラス

ポインター引数による初期化を行うときに、引数を使用しない non_const メンバー関数を単項関数オブジェクトとして呼び出せるようにするアダプター クラス。 C++ 11 で非推奨となり、C++ 17 で削除されています。

構文

template <class Result, class Type>
class mem_fun_t : public unary_function<Type *, Result> {
    explicit mem_fun_t(Result (Type::* _Pm)());

    Result operator()(Type* _Pleft) const;
};

パラメーター

_Pm
関数オブジェクトに変換されるクラス Type のメンバー関数へのポインター。

_Pleft
_Pm メンバー関数が呼び出されるオブジェクト。

戻り値

適合可能な単項関数。

解説

このクラス テンプレートは _Pm のコピーをプライベート メンバー オブジェクトに格納します。これは、Type クラスのメンバー関数へのポインターである必要があります。 そのメンバー関数 operator() は (_Pleft->* _Pm)() を返すように定義されています。

mem_fun_t のコンストラクターは通常は直接使用されません。ヘルパー関数 mem_fun を使用してメンバー関数を適合させます。 メンバー関数アダプターの使用例については、「mem_fun」を参照してください。