Boost C++ 库

...世界上最受尊敬和专业设计的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ 编码标准

Boost Statechart 库

(以前称为 boost::fsm)

概述

目录

概述
支持的平台
入门指南
受众
 
教程 [pdf: 英文版, 日文版]
UML 到 Boost.Statechart 映射摘要
常见问题 (FAQs)
配置
定义
参考 [pdf: 英文版]
原理 [pdf: 英文版]
性能
致谢
待办事项列表
变更历史

概述

欢迎使用 Boost.Statechart,一个用于有限状态机的 C++ 库。功能包括

支持的平台

Boost.Statechart 在您的平台上是否以及如何工作最好在状态页面上确定。如果您的编译器列中的单元格全部为绿色,则该库应按广告宣传的那样工作。不同颜色的单元格表示可能存在问题;请点击链接查看详细信息。在使用该库之前,我还建议在您的特定平台上以开发期间使用的所有模式(调试、发布等)运行测试(请参阅入门指南)(状态页面仅显示调试模式结果)。测试编译器开关越接近开发期间以后使用的开关,未来出现意外的可能性就越小。Intel 9.0 与 MSVC 7.1 基础工具集就是一个这样的意外示例,其中 DllTestNormal 和 DllTestNative 在调试模式下通过,但在发布模式下失败。

入门指南

  1. 按照 Boost 入门页面上描述的步骤 1-4 操作。由于 Boost.Statechart 是一个仅包含头文件的库,您现在应该知道足够多的知识来在您喜欢的环境中编译教程中的示例(PingPong 除外,它需要 Boost.Thread 二进制文件)
  2. 可选:如果您想编译 PingPong 示例或在您的项目中使用fifo_scheduler<>,您需要获取 Boost.Thread 二进制文件并链接它们,请参阅 Boost 入门页面的步骤 5-6
  3. 可选:如果您想运行测试,您需要获取 bjam 可执行文件,如 Boost 入门页面的步骤 5.2 中所述。完成此操作后,bjam 应该安装在您的 PATH 中。打开命令提示符并将当前目录更改为 boost_1_38_0/libs/statechart/test。输入
    bjam --toolset=your-toolset
    

    (其中 your-toolset 是 Boost 入门页面的步骤 5.2.2 下记录的名称之一)并按 CR。测试运行后,失败(如果有)将在输出末尾以“...failed updating X targets...”消息的形式指示。对于某些平台,某些失败是预期的,请参阅支持的平台

受众

在所有 Boost.Statechart 文档中,都假定读者熟悉状态机概念、UML 状态图和大多数 UML 状态机术语。如果情况并非如此,以下链接可能会很有趣

某些使用的术语在 UML 规范中找不到,请参阅定义以获取更多信息。


Valid HTML 4.01 Transitional

修订2007 年 4 月 9 日

版权所有 © 2003-2007 Andreas Huber Dönni

根据 Boost 软件许可,版本 1.0 分发。(请参阅随附文件 LICENSE_1_0.txt 或在 https://boost.ac.cn/LICENSE_1_0.txt 复制)