2

に何らかの条件を追加することは可能ですかboost::signal。いくつかのブール関数を取得する場合があり、信号を発行するときに、関数が true を返すかどうかを確認してから発行する必要があります。

いろいろなところに発射されるので、発射中の状態をチェックしたくありません。また、スロットの状態を知る必要がないため、スロットの状態を確認したくありません。

4

2 に答える 2

2

この方法で多くの場所から信号を発信する必要がある場合は、そのためのメソッドを追加します。

void emitSignal()
{
   if( /* condition */ ) {
       _signal();
   }
}

emitSignal()次に、信号を直接送信する代わりに呼び出します。

于 2014-06-10T08:07:24.033 に答える