Tinyfsm: 我们可以有同一个 Fsm 的多个实例吗?

创建于 2017-10-25  ·  5评论  ·  资料来源: digint/tinyfsm

由于在类 Fsm 中声明了typedef F const * state_ptr_const_t; ,对于特定的 Fsm,我们不能获得多个实例。 有什么办法可以避免这种情况吗?

question

所有5条评论

正如您所说的那样,Fsm 和状态都是模板类型的静态实例。 这意味着对于特定的 Fsm,不可能有多个实例。

使用一些模板元编程魔法可能是可能的,我记得对此做了一些实验,但它变得非常复杂,所以我放弃了它(因为 tinyfsm 的一个主要目标是保持简单)。

以下是如何拥有多个相同类型的状态机,声明一个examples/api/multiple_switch.cpp

我打算使用这个库为数千个 AI 机器人做 fsm……如果我没有办法为每个机器人实例化一个 Fsm 对象,这似乎不再可行。 (新手 c++ 学习者,所以如果有解决方法,那就不是积极的了)。

嗯,我只会使用https://www.boost.org/doc/libs/1_64_0/libs/msm,因为它在功能方面更符合我的需求。

同样的问题。 我想将此库用于 websocket 服务器 - websockets 作为状态机。
_我遇到了

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

cniaulin picture cniaulin  ·  3评论

Xaroth picture Xaroth  ·  3评论

ghost picture ghost  ·  3评论

kphamilton picture kphamilton  ·  3评论

maboiteaspam picture maboiteaspam  ·  3评论