だからこのような構造体を型付きのクラス/関数に変換できますか?
struct RenderCastedDataFunctor
{
simpleRendererGraphElement* obj_;
RenderCastedDataFunctor(simpleRendererGraphElement* obj)
: obj_(obj) { }
void operator()(char* castedChar, int castedCharLength)
{
obj_->renderCastedData(castedChar, castedCharLength);
}
};
のような構造では、我々はあまりにも構造(renderCastedData
)抽象的に使用する抽象型に* simpleRendererGraphElementをオンにし、その関数名を作ることができますか?
だから私は、私はそれに渡したいcharGenerator
クラス
template <typename Function>
void AddSubscriberToGeneratedData(Function f)
内部の機能は私がデータにrenderCastedData
と呼ばれる関数を登録することができますいくつかのsimpleRendererGraphElement内部にその構造によりtype void (differentClass::*)(char*, int)
の異なるクラスから機能してい私はにchar*
とint
を取る抽象クラスの機能を渡すことができるようにする方法を持ってしたい charGenerator->AddSubscriberToGeneratedData(RenderCastedDataFunctor(this));
。そんなことをする方法?
私の答えの編集を参照してください。 – Nawaz