Either way - *cries*
The offending line?
boost::function< void ( Entity* ) > func = boost::bind( &Archive::buildFilters, this );
boost::function< void ( Entity* ) > func = boost::bind( &Archive::buildFilters, this );
#include <boost/function.hpp>
#include <boost/bind.hpp>
class button
{
public:
boost::function<void> onClick;
};
class player
{
public:
void play();
void stop();
};
button playButton, stopButton;
player thePlayer;
void connect()
{
playButton.onClick = boost::bind(&player::play, &thePlayer);
stopButton.onClick = boost::bind(&player::stop, &thePlayer);
}
int main( int argc, char* argv[] ) {
return 0;
}
------ Build started: Project: vfs, Configuration: Debug Win32 ------
Compiling...
sandbox.cpp
c:\documents and settings\campbell\my documents\programs\pain\vfs\sandbox.cpp(8) : error C2079: 'button::onClick' uses undefined class 'boost::function<Signature>'
with
[
Signature=void
]
c:\documents and settings\campbell\my documents\programs\pain\vfs\sandbox.cpp(24) : error C2440: '=' : cannot convert from 'boost::_bi::bind_t<R,F,L>' to 'int'
with
[
R=void,
F=boost::_mfi::mf0<void,player>,
L=boost::_bi::list1<boost::_bi::value<player *__w64 >>
]
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
c:\documents and settings\campbell\my documents\programs\pain\vfs\sandbox.cpp(25) : error C2440: '=' : cannot convert from 'boost::_bi::bind_t<R,F,L>' to 'int'
with
[
R=void,
F=boost::_mfi::mf0<void,player>,
L=boost::_bi::list1<boost::_bi::value<player *__w64 >>
]
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
Build log was saved at "file://c:\Documents and Settings\Campbell\My Documents\Programs\pain\vfs\Debug\BuildLog.htm"
vfs - 3 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========