私がやりたいことは、Execute()
実行して完了し、Base::Done()
を呼び出してから を呼び出すことDerived::Done()
です。私がこれを行っているのは、Base
クラスExecute
が何かを実行し、完了したらDerived::Done()
. 私はそれを正しく説明していると思います。タスクが完了したときに呼び出されるリスナーのようなものです。Base
クラスがクラスを呼び出す方法にちょっとこだわっていますDerived
。
class Base
{
virtual void Done(int code){};
void Execute();
}
void Base::Execute()
{
}
class Derived : Base
{
void Done(int code);
void Run();
}
Derived::Done(int code)
{
}
void Derived::Run()
{
Execute();
}