
3 Apr
2009
3 Apr
'09
3:17 a.m.
// usage in a ctor initialisation list …, where m_button_monitor is of type ButtonMonitor,
, m_button_monitor(boost::bind(boost::mem_fn(&CView::OnRun), this, ID_TOOLBUTTON_AUTO))
//definition 1 of ButtonMonitor that fails
// the error message by MS VC9SP1:
// error C2664: 'programmer_board::ButtonMonitor::ButtonMonitor(boost::function<Signature> &)' :
//cannot convert parameter 1 from 'boost::_bi::bind_t<R,F,L>' to 'boost::function<Signature> &'
//
class ButtonMonitor
{
public:
ButtonMonitor(boost::function<void()>& f)
: m_f(f)
It seems that you try to initialize non-const reference with a temporary.