|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:3 f8 ~) r I4 ?# }1 }& [6 P7 j
is 3 q, |! Y5 a6 [# V- ^+ N
do ! f7 ?, {/ }9 ~
waituntil EventController.simTime = Schedule[now_depart_num];
, H v$ D& Y6 C! P8 i7 g, k* }- l if zhuZhan.empty = false
! E& b; O% e+ A. S J3 R' D then ( _1 C: y; O+ Z% I. C, b
zhuZhan[1].move();4 v( R0 u7 I1 Y) a! o9 E: v( ?
now_depart_num = now_depart_num + 1; % x. M+ d3 \. d! C. V6 J5 h
else, R) A+ }# O* I0 @2 }+ e# c7 R! a
waituntil zhuZhan.empty = false;
5 F f* T6 F5 c9 i zhuZhan[1].move();* B/ t( ?. X1 d; X# M) k
now_depart_num = now_depart_num + 1;
9 g! z! b# \2 ?/ o end; $ w7 V5 S' ^, \! Q ]5 [
end;
# F& ]+ D. U3 J) \$ \" D. P
: f) \9 Z+ {1 L* ~: t/ Q) \0 Q `, b但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. : d9 J6 r0 O( M0 J2 _) I
若是增加一个局部变量,如下:
( |, R( Y2 K' R8 Qis
2 l6 n c7 W$ ?' G4 a4 z depart_time : time;& K1 n7 b/ x! ?% Z" M5 C
do 9 o% u+ d1 j: n7 S$ y3 |
depart_time := schedule[now_depart_num];
& E, w2 `, C/ {: ~& d: z l2 ]2 {/ S waituntil EventController.simTime = depart_time; 6 P0 S4 \( t( t7 X" }
。。。& g2 y( g7 y! U8 O- w& E" Z
又会出现syntax error near line 5 at <;>!
% E7 x. I; C5 @; \
+ ]* T- F6 t% i) _# D! ^3 B0 }0 W各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|