2016-07-15 2 views

답변

1

아니요, 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 인수 유형을 정의하는 것입니다 (예 : 서브 클래스에 의해 정의됩니다.

관련 문제