Boost.Signals2 を Hypodermic で使用するには、どのようにスロットを接続すればよいですか? OnActivating ブロック内に接続コードを配置しますか?
Hypodermic は Signals2 で構築されていますが、お互いの機能が重複していないと考えるのは正しいですか?
Boost.Signals2 を Hypodermic で使用するには、どのようにスロットを接続すればよいですか? OnActivating ブロック内に接続コードを配置しますか?
Hypodermic は Signals2 で構築されていますが、お互いの機能が重複していないと考えるのは正しいですか?
OnActivating でシグナルを接続しても、シグナルは「発火」しません。つまり、シグナルのデリゲートは呼び出されません。
しかしもちろん、次のようにして機能させることもできます。
mySignal.connect([](std::shared_ptr< Foo > foo)
{
// do some stuff with Foo being activated
});
builder.autowireType< Foo >()->onActivating(
[&mySignal](IActivatingData< Foo >& data)
{
// invoke all delegates...
mySignal(data.instance());
}
);
それが役立つことを願っています。