|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
E/ x& W& C$ U' P Dis 4 d0 T! B; H% ?
do
! C7 F8 |! T$ m% F- v9 o. E waituntil EventController.simTime = Schedule[now_depart_num];# J* Y& S ?9 j& @9 e( @. } F! }
if zhuZhan.empty = false
8 q, X- x) E. ~* L then / n" w' h$ N" I) m
zhuZhan[1].move();. [& o1 }2 W$ @3 j
now_depart_num = now_depart_num + 1;
! ^; ]& S2 \8 N. }! G: z else
4 z* E! A6 j/ N% f waituntil zhuZhan.empty = false;$ K/ G% ]3 h& ]1 O: G
zhuZhan[1].move();5 X3 ?9 r: B$ {4 @: c+ b
now_depart_num = now_depart_num + 1;
* }9 f& d6 o$ v$ k, x end;
" p' J( f6 p) K5 V( T3 F7 pend;
# w& ?5 H+ K) q6 T, e; e3 |3 m; d; t" l0 U+ I0 A! p7 l& r3 F
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. 9 B: m Z9 T& N3 z' _+ Z3 N3 P9 d
若是增加一个局部变量,如下:, o( H2 W3 n9 Z3 t
is 7 _4 _: U: Q1 t5 @0 K8 X
depart_time : time;5 I/ V0 z5 S% B7 A7 q
do 4 R5 t1 N' C# R! {
depart_time := schedule[now_depart_num];) Q/ e: |: k6 ~1 o
waituntil EventController.simTime = depart_time; ) L1 D/ ?' v/ ~& G, c, z
。。。* v* b% M& ?5 s6 Q6 i1 D
又会出现syntax error near line 5 at <;>!) a! H. W( ^! z
$ n" k) j+ b' v各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|