|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
7 w, [ B* ?8 w1 \! C, s5 Tis ; x; c1 t8 @6 I* ^8 W; h. g# N6 I: F: V) _
do
4 K. y7 L! S3 s/ U' O1 b: z# _ waituntil EventController.simTime = Schedule[now_depart_num];: w; x) U/ m% L- D- t/ F
if zhuZhan.empty = false4 e: n: m; }: {5 d7 F4 _& S
then ! E9 @; l2 z A/ x$ q
zhuZhan[1].move();
; b) O/ t) Q0 s! F* n. v now_depart_num = now_depart_num + 1; , a3 x. _% `5 O# [; p6 Y9 m0 I
else
0 w. j( E* P ^, r waituntil zhuZhan.empty = false;* s5 B$ ] J% K; e
zhuZhan[1].move();6 o2 H+ {9 c! f
now_depart_num = now_depart_num + 1;
# O) U7 p, I1 b end;
* v% H y9 n4 }* F; Pend;6 f5 H- N1 O( P
2 [' H. y) ]/ V) y, w但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
7 ^# d! f B; k若是增加一个局部变量,如下:' Z4 G* m8 ^! [
is 6 e; L t% P" P' m2 E5 ~2 b7 M
depart_time : time;; k h& E) d* q# m$ _: |# ]$ D0 ]) ^
do
: [7 \1 n# G: T9 ], S depart_time := schedule[now_depart_num];
9 H3 x0 F4 Q( }1 |) _& W% R waituntil EventController.simTime = depart_time; : @4 f, z" N5 Z
。。。
) y/ E5 I4 m5 d; m又会出现syntax error near line 5 at <;>!; O* ^& p" E! }$ `1 p2 X, h* d7 Q
1 ~' w+ D0 U+ q
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|