|
case 2: return getitemtype(item) == 2||3;
! d; E3 O$ L5 W/ I7 r9 ?- o& G3 Y等于 case 2: return 2||3;
4 H% P5 F, {* u5 _等于: return 1; |/ t/ l3 F! ?" k
你的第一个程序相当于:4 D" c; F5 I6 X0 T5 ^: k% u3 N/ A" |" e
case 1: return getitemtype(item) == 1;
9 k3 o$ m* e: `6 Xcase 2: return 1;在Megesort中最后一个出口,可 ...
& B- I1 I1 X# t, |$ N6 W# nwj109260758 发表于 2010-6-14 05:15 
8 D3 z7 L0 X4 `1 c% k
. p; t5 ]0 C7 Y: d4 n" c# I' A理解有些问题啊,这个触发是一个判断,当每个item到达一个port(端口)时触发一次,然后判断触发:如果为真则发送,如果为假则不发送。
9 u0 R- z, M) \return getitemtype(item) == 2||3 相当于判断两次,只要一次为真则整体为真,判断的条件是:getitemtype(item) == 2 和 3 , 3总为真' R: }2 V( L* p0 _) n- ~& C- u Q- s
. A* B( ^) o8 K3 `0 l; |3 ]6 R$ V
这种写法是不正确的,而return getitemtype(item) == 2||getitemtype(item) == 3 则判断两次,所以要注意这种细节。 |
|