0
C++シグナルを異なるパラメータリストのスロットにリンクすることはできますか?異なるパラメータを持つC++ブースト信号とスロット?
すなわち、一つのスロットが1つのパラメータを受け取り、他の一つは、2取るなど...
そして、あなたはその後、1つのまたは2のパラメータと、その信号を呼び出し、それが対応するスロットを呼び出しますか?
C++シグナルを異なるパラメータリストのスロットにリンクすることはできますか?異なるパラメータを持つC++ブースト信号とスロット?
すなわち、一つのスロットが1つのパラメータを受け取り、他の一つは、2取るなど...
そして、あなたはその後、1つのまたは2のパラメータと、その信号を呼び出し、それが対応するスロットを呼び出しますか?
いいえ、signal
インスタンスのアリティは、そのタイプによって定義されます。あなたがboost::signals2
template class(または非推奨boost::signals
)の定義を調べる場合:
template<typename Signature,
typename Combiner = boost::signals2::optional_last_value<R>,
typename Group = int, typename GroupCompare = std::less<Group>,
typename SlotFunction = boost::function<Signature>,
typename ExtendedSlotFunction = boost::function<R (const connection &, T1, T2, ..., TN)>,
typename Mutex = boost::signals2::mutex>
class signal : public boost::signals2::signal_base {
呼び出し信号の署名とそのスロットはテンプレートパラメータに固定されています。
複数の種類のデータを含めることができるEvent
引数型を定義することを回避することができます。サブクラスによって定義されます。