KSCL::CUnaryClassCaller< type_class, type_parameter, type_return >のコラボレーション図
公開型 | |
typedef type_return(type_class::* | type_pmfn )(type_parameter) const |
メンバ関数ポインタの型定義。. より詳しく... | |
公開メンバ | |
CUnaryClassCaller (const type_class &p_rcClass, type_pmfn p_pmfn) | |
・コンストラクタ。. より詳しく... | |
virtual | ~CUnaryClassCaller () |
・デストラクタ。. より詳しく... | |
type_return | operator() (type_parameter p_) const |
・アルゴリズムから呼ばれるメンバ関数。. より詳しく... | |
非公開属性 | |
const type_class & | m_rcClass |
呼び出すクラスへの参照。. より詳しく... | |
type_pmfn | m_pmfn |
呼び出すメンバ関数へのポインタ。. より詳しく... |
引数ひとつ渡されて戻り値を返す関数オブジェクトとして使用できます。
つまり、 operator() の代わりにコンストラクタの引数の (p_rcClass.*p_pmfn)() を呼び出します。
プレディケートで使用することを考えて、メンバ関数は const である必要があります。
まぁ、一種のデリゲートですね。
type_class | 呼び出すクラスの型。 |
type_parameter | アルゴリズムから渡される引数の型。 |
type_return | アルゴリズム内で返す戻り値の型。 |
|
メンバ関数ポインタの型定義。.
|
|
・コンストラクタ。. クラスとメンバ関数を渡してもらいます。
|
|
・デストラクタ。. 特に何もしません。 |
|
・アルゴリズムから呼ばれるメンバ関数。.
|
|
呼び出すクラスへの参照。.
|
|
呼び出すメンバ関数へのポインタ。.
|