5 分•作者: zigrazor•7 个月前
嗨,HN!
我开发了 [CXXStateTree](<a href="https://github.com/ZigRazor/CXXStateTree">https://github.com/ZigRazor/CXXStateTree</a>),这是一个现代 C++ 头文件库,用于创建具有简洁、直观 API 的分层状态机。
它支持:
- 深度嵌套状态
- 进入/退出处理程序
- 带有守卫和动作的状态转换
- 使用 `co_await` 的异步转换(C++20 协程)
- 可选的运行时类型识别,以提高灵活性
它非常适合复杂的控制逻辑、嵌入式系统、游戏、机器人以及任何您可以使用有限状态机的地方。
我非常欢迎社区的反馈、用例或贡献!
代码库:<a href="https://github.com/ZigRazor/CXXStateTree">https://github.com/ZigRazor/CXXStateTree</a>