Hi, below is my code:
template< InputSubscription t_sub >
static void subscribe( SignalBank const& bank, typename
GetSignal::signal::slot_type& slot )
{
using boost::fusion::at_c;
at_c( bank.signals ).connect( slot );
}
void mouseCB( int, int )
{
}
void footest()
{
SignalBank bank;
//boost::fusion::at_c<1>( bank.signals )( 3, 4 );
subscribe( bank, &mouseCB );
};
Notice that I have a wrapper function, 'subscribe', which uses the slot_type
member of the signals class to pass the slot to the connect() function.
However, visual studio 9 reports the following error:
*error C2664: 'bob::input::subscribe' : cannot convert parameter 2 from
'void (__cdecl *)(int,int)' to 'boost::slot<SlotFunction> &'
with
[
SlotFunction=boost::function
]
*Any solutions to fix the problem?*
*