如何在boost :: statechart state_machine对象中获取当前最派生的状态?

时间:2011-09-09 02:41:15

标签: c++ boost state-machine boost-statechart statechart

我正在使用boost :: state_chart库。 出于调试目的,我想在任何给定时间知道我的状态机的状态。 如何在state_machine对象中获取当前(派生的最多)状态?

1 个答案:

答案 0 :(得分:2)

您可以使用state_machine :: state_begin和state_machine :: state_end获取当前状态对象,请参阅此处的“自定义状态查询”:

http://www.boost.org/libs/statechart/doc/tutorial.html#StateQueries

这些为您提供基类指针,如果您想获得最多派生类型,您必须使用某种类型的访问者。