|
case 2: return getitemtype(item) == 2||3;1 R# M/ A8 Y' U; Z1 d V
等于 case 2: return 2||3;
2 r' l' D7 w4 I3 h' S等于: return 1;+ s/ s+ }, D3 [/ z4 u
你的第一个程序相当于: Q1 h" Z3 ~9 o& g0 T
case 1: return getitemtype(item) == 1; 1 }$ I5 u2 r# X8 S1 ]$ p5 M
case 2: return 1;在Megesort中最后一个出口,可用来将在所有其他临时实体从最后一个输出端口发送出去。所以,可以实现功能!" k4 B( Q% r. c7 q% I G. C' d1 R
+ n/ n5 k, p2 }+ {2 d: G/ E, ~$ y% y所以第二个你的程序可以解读为:
# t6 [" M' W4 X" E0 u# k- _6 fswitch(port)
( M, D' B' m! F3 F{; [1 L7 t1 b; L7 C5 {' v* h" R; [! |
case 1: return 1;(相当于所有实体可以从出口1流出)( K/ B/ b5 f6 P. l& r/ x
case 2: return getitemtype(item) == 3;(ITEM3从出口也可流出)
# a' Q, {4 F% a8 K6 P}" e7 T4 |% C" k
由于第一个出口优先于出口2,所以ITEM3 一直从出口1流出。
' L% m/ j' v" H4 v" h
& f+ l2 f: h& T% D5 r! q如有错误,请指教。 |
|