|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:% ~& ]/ N; T. B$ j
is . U" i' m, V7 k }
do
0 o# X- V, ]/ V+ ~ waituntil EventController.simTime = Schedule[now_depart_num];
& J, `2 B1 u3 W* S" I if zhuZhan.empty = false
/ D: j$ s& W' j" E$ | then
' a9 E5 M: q. x# S& I zhuZhan[1].move();/ Q6 D" H8 ]3 t' F
now_depart_num = now_depart_num + 1; - S0 l8 j5 \( T' ^1 \. n$ |
else
* Z/ @; _8 l: d2 J: J0 }+ z waituntil zhuZhan.empty = false;
; { E: s( D7 w8 F zhuZhan[1].move();
( X) Q8 ^7 Q2 h/ e" Y6 P } now_depart_num = now_depart_num + 1;4 y' z: ~0 c& z! @) n- V( [# f8 |
end; ; f& C* q- I* c2 N
end;
2 B" W: @% ?! [0 d/ m9 b, l0 A1 K c" x4 V5 e5 ~% v- X& N
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. 3 @% w2 `- M& M+ r8 \
若是增加一个局部变量,如下:; [, S+ T' R( D7 u* T5 ]% U
is 1 ?1 p9 R% x) K' b0 n
depart_time : time;
8 n6 V) q6 `6 B+ hdo . e: }, l+ o; m- W, R
depart_time := schedule[now_depart_num];
8 ]* }! U$ A" H6 @5 x waituntil EventController.simTime = depart_time; ) L0 s# `( Q% g3 |" [
。。。# }0 _! F( b' f1 b
又会出现syntax error near line 5 at <;>!
# g8 f8 l3 I3 a9 o; T4 t& Q6 E8 x# Z q w
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|