|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
; M5 Y/ b9 H9 O* A: P) Zis
' l1 P G" a- ^- V4 |; Kdo
$ U' E3 v5 h6 q s+ b; o) z6 n! w waituntil EventController.simTime = Schedule[now_depart_num];
, ~3 g2 W8 o# c# x+ P- F' ]3 ~% ` if zhuZhan.empty = false5 S( z# A, `$ Q- a: L3 p
then % U! K4 n1 Z8 o! {- f
zhuZhan[1].move();
5 C2 x- r) M7 e8 E% \! l6 C9 D now_depart_num = now_depart_num + 1; 3 b' t! w& _4 b/ z- r
else& G7 ]4 m6 u4 Y0 D* j8 X
waituntil zhuZhan.empty = false;7 l9 X+ C& Y3 k$ Y4 D4 T
zhuZhan[1].move();
0 G; q6 Y- G8 b; X8 O# c now_depart_num = now_depart_num + 1; {8 W+ U; F0 B: V. ^
end; - p6 `9 A8 ^; Q ~! l6 _
end;! K! H9 z) k1 t2 |/ N
$ T& s- N9 `6 c/ w) E+ ^但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. 7 l* @' p" k+ j! f
若是增加一个局部变量,如下:0 L' u4 i3 h" i8 b
is 8 |7 X c8 |/ J* G n$ f
depart_time : time;
1 o! L X6 f4 ido : {) q4 R: Q" B2 j7 R
depart_time := schedule[now_depart_num];
1 u3 r k5 n# g0 |, X waituntil EventController.simTime = depart_time;
7 Y0 m# u; L' y9 ] 。。。
8 s, b% l s6 n ^$ F又会出现syntax error near line 5 at <;>!0 u6 U" Z' P- o4 ^
) F) g, ^' T- |' z: [9 ]6 f各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|