Why might using the following fail unless called from the constructor of the class?
updateState = boost::bind( &PhysicsObject::updateActive, this );
However the following fails at runtime, with a 'what(): call to empty boost::function' exception
void PhysicsObject::setState( PhsyicsObjectState aState ) {
_state = aState;
if( _state == ACTIVE ) { // This branch is executed
updateState = boost::bind( &PhysicsObject::updateActive, this );
} else {
updateState = boost::bind( &PhysicsObject::updateExploding, *this );
}
}