|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
$ G2 f! N- c$ Qis # o6 b/ g$ y8 @* H
do
; N$ ~. b. ^4 c9 i7 A% K9 e! j+ Y waituntil EventController.simTime = Schedule[now_depart_num]; c. O& M# v) d, L& O7 K( u
if zhuZhan.empty = false
" d* Y9 G W9 l* y: D d then
. X9 H7 [6 ~' R3 r" _8 Z zhuZhan[1].move();
" F# p% u; V! K5 g9 h now_depart_num = now_depart_num + 1; . _6 g @+ D: Q
else0 V5 \* Y& E, D2 \
waituntil zhuZhan.empty = false;
+ ~! M& y' ~! U, m zhuZhan[1].move();0 v$ s {9 {4 g5 X# }6 c. w
now_depart_num = now_depart_num + 1;
M- ]0 w* r( w/ ?4 o end; {/ a/ n6 S8 [5 p5 T" x5 }& P% Y( } R: j
end;
`) E5 m& C) k9 z" n4 |8 E
2 X) r7 p' _4 `; E8 S7 a但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. , v- {/ F9 o" j% J0 B
若是增加一个局部变量,如下:
' k' d0 w4 J- w7 }' U0 ois
( Q0 h/ c; j& {5 U+ e* p8 ^/ `/ J depart_time : time;( @# U, ?" l+ }0 ^" W
do
- `. c7 J8 _4 T2 ? depart_time := schedule[now_depart_num];9 t% k0 ^, U! ^5 J a
waituntil EventController.simTime = depart_time;
% k! {% L( r7 g' e3 Z 。。。
5 _0 U2 G9 J. t% g! d又会出现syntax error near line 5 at <;>!8 F! Z j( T* A: b0 m1 k4 }. g
0 d( u' M+ j: I( l3 X* X* Y各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|