У меня есть состояние A
, которое я хотел бы безоговорочно перейти в его следующее состояние B
, как только конструктор A
завершит работу. Возможно ли это?
Я попытался опубликовать событие из конструктора, который не работает, даже если он компилируется. Спасибо.
Редактировать: Вот что я пробовал до сих пор:
struct A : sc::simple_state< A, Active >
{
public:
typedef sc::custom_reaction< EventDoneA > reactions;
A()
{
std::cout << "Inside of A()" << std::endl;
post_event( EventDoneA() );
}
sc::result react( const EventDoneA & )
{
return transit< B >();
}
};
Это приводит к следующей ошибке подтверждения во время выполнения:
Assertion failed: get_pointer( pContext_ ) != 0, file /includ
e/boost/statechart/simple_state.hpp, line 459