状态机的实现

状态变量的使用

有4个步骤,具体见《C# Source Book》。

  1. 定义状态
  2. 初始化状态变量
  3. 使用状态
  4. 维护状态

使用状态机

  1. 抽象出各个状态
  2. 确定状态间的转换关系
  3. 确定状态间的转换条件
  4. 使用switch-case实现状态转换
  5. Any State的转换直接判断就行

比如下面这个状态转化

实现代码如下:

switch(state) {
  case State.A:
    if (xxx){
      state = State.B;
    }
    break;
}

if (xxx)
  state = State.C;