|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
- r& ?+ S: \2 x) `1 Vis
8 L0 y$ V% [% Kdo
7 Y' Y$ |$ i' ?+ a6 W8 v' V! O7 W waituntil EventController.simTime = Schedule[now_depart_num];6 f h: t) N9 G9 W
if zhuZhan.empty = false
) P0 {7 K- u6 [3 F then 9 O; h Q2 @5 s. s
zhuZhan[1].move();, S/ C1 x3 g5 O! o5 s
now_depart_num = now_depart_num + 1; ) w: G+ ]5 S; Z2 T- {3 `" o4 P
else; H0 r: i1 C. l6 Q! E
waituntil zhuZhan.empty = false;
7 S' I. u" ^. R- ^- r zhuZhan[1].move();
R) L4 R1 K0 O' J. G now_depart_num = now_depart_num + 1;6 T( Z4 Y, E1 w; o% a( _
end;
% o, f" `$ o9 C+ {0 S K9 Rend;
2 P) a6 |2 Z2 P# Y, v# ^$ }4 j0 m0 n. O
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
+ _' Q6 r, l" {& Z/ b" t" H若是增加一个局部变量,如下:
9 a$ {. v8 d; J- jis
1 j5 W& e+ B8 T# t7 U depart_time : time;; {5 D8 z5 K" ^2 c" f
do
2 T6 o5 i# l$ E depart_time := schedule[now_depart_num];
e1 s* `7 p/ ]& o: Y waituntil EventController.simTime = depart_time; " m( Q# j& Z$ f+ d( B0 ]
。。。8 ~; f' E5 e% r; y
又会出现syntax error near line 5 at <;>!# d: m: b5 X/ o3 l( y- }0 a. N
. ~& J) D# S' D: h Z* I/ A各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|