作者Cloud (抓不住...)
看板C_and_CPP
標題[問題] Switch簡化
時間Wed Mar 11 09:43:58 2009
最近接到前輩的Code維護...
有個地方發現寫的不是很好,一直想改寫~~
請問有沒有什麼好的重構方式~~
有考慮過用 Strategy Pattern,
不過狀態太多(N個),希望各高手可以給一點想法...^^
說明: A程式與B程式透過N個指令做通訊,如C1,C2,C3...CN
當A收到B程式的C*指令,便會改變狀態
void func()
{
switch(state)
{
case 0: // 等待B程式的C0
break;
case 1: // 收到C0,C0指令會將state變數設為1
{
do_something_compute();
state = 2; // set state to be 2 in order to wait C1 command
break;
}
case 2: // 等待C1
break;
//... omitted
case N: // 等待B程式的CN
break;
}
}
--
I want love if it's possible ~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.126.29.55
推 stonehomelaa:function pointer array 03/11 11:12
→ eric1114:不會呀...簡單..明暸...改了會提生performance嗎?? 03/11 22:59
→ Cloud:呵...我吹毛求瑕一點~~ 03/11 23:12