st2func5.sct

来自「c#设计模式WithCla」· SCT 代码 · 共 32 行

SCT
32
字号
SCRIPT_NOREPEAT_HEADER_BEGIN
/////////////////////////Function Definitions TRUNCATE_EIGHT$STATE_CLASS_NAME$.cpp///////////
// Class: STATE_CLASS_NAME                      

#include "$TRUNCATE_EIGHT$STATE_CLASS_NAME$.h" 
#include <iostream.h>
[
STATE_LIST_NAME the$STATE_LIST_NAME ;
]
[
STATE_LIST_NAME$* p$STATE_LIST_NAME = &the$STATE_LIST_NAME ;
]
State * pState = &the$STATE_INITIAL_NAME ; //Initialize pState to the Initial State

                             //Remove duplicate functions and update functions for conditions
SCRIPT_NOREPEAT_HEADER_END
[
State * TRANSITION_CURRENT_STATE$::$TRANSITION_EVENT_WITH_PARAMETERS //throw (string)
{if (TRANSITION_CONDITION) 
  { TRANSITION_ACTION 
    pState = (State*) p$TRANSITION_NEXT_STATE ; 
    return pState;
  }
 else { string eventError ("Event Error"); throw eventError; } 
} ]
[                            //Remove Parameter Type in Message 
void Controller::TRANSITION_EVENT_WITH_PARAMETERS
{ try { 
    pState = pState -> TRANSITION_EVENT_WITH_PARAMETERS ; }
  catch (string eventError) { throw eventError; }
} ]

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?