本節會實作一個分派方法及每一個狀態物件的建構子。您可以選擇非階層式的實作策略來變更此實作,此策略不會產生狀態類別。
例如:
class_state1::class_state1(class* c, State* p,
State* cmp): LeafState(p, cmp) {
// State constructor
};
int class_state1::takeEvent(short id) {
int res = eventNotConsumed;
switch(id) {
case event1_id: {
res = concept->state1Takeevent1();
// Dispatching the transition method
break;
};
};
};