c++ - 在 C++ 状态机中实现事件条件

标签 c++ interface lambda state-machine fsm

我正在为嵌入式 C++ 应用程序接口(interface)使用分层 FSM。我想使用小函数来确定是否可以触发某些状态间事件,以及使用它们来影响数据库中的更改:但是,为每个状态创建一个具有不同事件函数的新类也令人望而生畏将指向它们的指针设置为回调。 (我们在这里谈论的是 300 个函数。)

如果 C++ 支持 lambda 函数,我会使用它们,但我对项目架构没有太大的重视,所以我不愿意使用需要大量库集成的第三方解决方案(如 boost)或包含额外的预处理器步骤。

有什么想法吗?

最佳答案

实际上,如果您使用 Boost/TR1 库,则支持 Lambda functions .详情可以在 Boost web site 上找到.

关于c++ - 在 C++ 状态机中实现事件条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/334746/

相关文章:

c++ - 使用 boost 序列化保存和检索多个对象

c# - 模拟兄弟方法

r - rpois在R中产生具有大均值(lambda)的NA

c# - 嵌套两个 lambda 风格的 Func 表达式

java - 基于命令行参数注入(inject)实现

c# - 如何在 lambda 表达式或 linq 中执行此操作?

c++ - 为什么相同的模板类会得到相同的静态 ID?

c++ - 为什么 C++ lambda 在多次调用时比普通函数慢?

c++ - setter 导致段错误

C# 如何检查一个类是否实现了泛型接口(interface)?