2013-03-13 33 views
1

我正在尝试使用in_state_reaction。 奇怪的是,在调用process_event()之后,似乎并没有执行此功能。 我改变了in_state_reactioncustom_reaction,它似乎很好。如何使用boost in_state_reaction

只是想知道如何使它与in_state_reaction一起工作。 我一定在做错事。

我会appriciate示例代码。在州内没有很多样品。

谢谢。

struct Reset : sc::simple_state<Reset, Idle> 
{ 
    Reset() { } 
    ~Reset() { } 


    typedef sc::in_state_reaction<Event1> reactions; 


    sc::result react(const Event1 &) 
    { 
       printf ("In state reaction\n"); 
     return discard_event(); 
    } // react 

}; // Reset 

回答

1

in_state_reaction不是一个自定义的反应,所以react就不叫! 在状态反应意味着你想调用一些功能并保持相同的状态。

in_state_reaction<Event1, Context, &Context::doSomething>

使用自定义的反应,当你不能在编译时你的目的地国家是知道的东西。

+0

谢谢。它的工作现在。 – 2013-03-14 05:13:50

相关问题