今問題があります。boost::signal と boost::bind を自分の Event クラスにカプセル化しようとしています。
class MyEvent
{
private:
boost::signal<void ()> Sig;
public:
void Subscribe(.........)
{
Sig.connect(boost:bind(.........);
}
void Raise()
{
Sig();
}
};
サブスクライブ関数の署名で関数ポインターを渡そうとしましたが、ビジュアル スタジオでエラーが発生するだけです。Subscribe の署名の書き方と、boost::bind に何を渡すかがわかりません。理想的にはboost::bind(&MyClass::MyHandler, &MyClassObject)
、Subscribe 関数に入れ、 のように外部で呼び出しMyEventObject.Subscribe(&MyClass::MyHandler, &MyClass)
ます。その2つの空白を埋めるのを手伝ってくれる人はいますか?