|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
" e1 Q3 |; @7 ]- A0 xis
* M# I& H& _/ \- I( q' S0 {: mdo 0 t" j+ u! U: D
waituntil EventController.simTime = Schedule[now_depart_num];
5 P4 Q: v8 A; l1 S if zhuZhan.empty = false
2 ]4 F$ h6 I8 g/ w3 q3 d+ k2 j7 L then
, P9 k8 D0 T$ q+ n" P% N" R0 }: N zhuZhan[1].move();7 H* D7 w* G4 N* q) p7 |, U. O
now_depart_num = now_depart_num + 1;
( c$ ]4 y% n# b0 [' K) m% ^ j else! @) B; k- }/ X; [; P4 E9 E
waituntil zhuZhan.empty = false;; j! w: A( J$ h u! c& W# S1 t: ?6 J
zhuZhan[1].move();
7 b2 s: ~+ x9 n) ?3 T$ P' ^$ ~ now_depart_num = now_depart_num + 1;
" U) c7 {+ C) x6 T4 l+ _. k2 q end; " @, y: \ W |4 L% D- |# F( T. ?
end;1 s8 X7 @. V9 x
5 F/ G% v! h! D7 I2 i, n8 V+ D但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
7 z# n$ w+ G5 f6 x; I5 m若是增加一个局部变量,如下:. q0 a, C9 d/ v8 V3 _
is
8 B9 C# G; D. k: G2 W' g) e depart_time : time;: E$ v" y. |6 i# j- O
do
# d" \5 y* Y7 } depart_time := schedule[now_depart_num];6 J$ S6 T8 y+ C$ O7 }
waituntil EventController.simTime = depart_time;
# y! n) ?& G9 Q: \5 N2 A7 w 。。。
5 E: ?2 t0 z0 b7 W1 g又会出现syntax error near line 5 at <;>!
! E- }; H2 T4 Z+ b" R F* @" H+ K) j, G7 p" B5 q4 V
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|