Young87

SmartCat's Blog

So happy to code my life!

当前位置:首页 >AI写作

c#题例-2025-09-06 01:53:11

编写一个C#程序,模拟实现一个**有限状态机(Finite State Machine, FSM)**,满足以下要求:

1. 状态机包含三个状态:`Idle`、`Running`、`Paused`,以及一个终止状态`Stopped`;
2. 状态之间有如下合法转换:
- `Idle` → `Running`(通过`Start`事件)
- `Running` → `Paused`(通过`Pause`事件)
- `Paused` → `Running`(通过`Resume`事件)
- `Running`或`Paused` → `Stopped`(通过`Stop`事件)
- 任意状态下接收到`Reset`事件回到`Idle`
3. 不合法的状态转换应抛出自定义异常`InvalidTransitionException`;
4. 提供注册状态变更事件通知功能,当状态发生改变时通知监听器(使用C#的委托/事件机制);
5. 编写测试代码验证所有状态转换和异常处理逻辑正确。

请设计并实现该状态机,并说明你的设计思路。

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇:无

下一篇: c#题例-2025-09-05 20:19:51

精华推荐