|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
; Z6 w. b8 D) L3 m U, ~+ Lis
- n8 J* z& |9 R. `do
) _4 E3 b% M5 W8 X l c waituntil EventController.simTime = Schedule[now_depart_num];
# x/ i0 B3 {! ] if zhuZhan.empty = false& H& M; _6 s" d6 }
then
( T7 S% _4 k; ?' ^" C- t8 @ zhuZhan[1].move();
0 d$ j1 t' Z( b. c& ` now_depart_num = now_depart_num + 1; 9 Y1 _5 D% d; h, R, \" e: D
else" \% T. G6 o3 P4 g* s, W8 S' k/ j, }
waituntil zhuZhan.empty = false;1 ^1 B$ y7 `# b; l* V0 N
zhuZhan[1].move();
7 `! R, X( h+ _8 Y3 S now_depart_num = now_depart_num + 1;
8 u6 b1 e; V ^; V7 p! d end; ! J6 j$ v& `/ U6 a# V1 J
end;
/ F# M& b9 v/ I; Q9 e6 d! K2 Z# ^5 U. ]; g& f) p r
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. - K' A. P0 u- A; T- I
若是增加一个局部变量,如下:9 t. w z) X) `4 S
is + {3 O, ^; U% b/ ]* D; `
depart_time : time;
0 Z: |; ?2 j2 `7 Kdo , V- P& w9 F1 ?- h. c6 `; y5 z
depart_time := schedule[now_depart_num];+ U, y" d! t: @6 U2 G
waituntil EventController.simTime = depart_time; / `# \) E, z% ^
。。。" k9 Y# G0 D8 N1 o7 t5 e
又会出现syntax error near line 5 at <;>!# v6 J6 S. U h8 _
0 ]$ M$ q8 b! g各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|