|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:1 b8 ?3 c9 F" ?2 ]: l
is % m/ R% b( r- f- a8 a1 u
do - y: N$ Q: h; \, m9 M
waituntil EventController.simTime = Schedule[now_depart_num];
9 s L/ [! P+ \" ?: W1 K" d/ n6 q) a if zhuZhan.empty = false3 R$ B3 c3 `7 O% s' S* [- H4 b
then * n3 r, Q, i/ F) E+ r0 z# B6 k) ?
zhuZhan[1].move();! k, g. \- P+ \5 V( y% }( L
now_depart_num = now_depart_num + 1; 3 ?7 R% p) p' I# O& M n z1 b
else; n7 d! D- L: X
waituntil zhuZhan.empty = false;
& g3 N; o c3 q1 N# |/ `/ o. n4 r# O7 r zhuZhan[1].move();4 i+ E- r8 @% |1 t! v# o* Q
now_depart_num = now_depart_num + 1;% Q* a$ E! k( J; i0 i
end;
& [, T ^$ J1 M' J" aend;+ M& ^0 R, A( [% g) V( I/ {
; Z: `% |+ ?; T9 D但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. / U0 w3 g& K+ ^. s9 a9 J H
若是增加一个局部变量,如下:
0 x* }/ h3 k; s! j! H T' Bis {& B9 G3 R5 I( h7 U" @( z
depart_time : time;. R+ u& p k5 |2 F( q2 C4 j- }( M
do
+ T) L( v' R3 D' k' L2 S depart_time := schedule[now_depart_num];2 c0 l. z- J* m
waituntil EventController.simTime = depart_time; # [+ u1 C2 P2 D6 ^* M( G
。。。
# y" g& H B1 M5 h, h3 d又会出现syntax error near line 5 at <;>!
$ i3 H& Y6 F4 D+ u" a3 D3 s5 k( c1 U: T6 B2 ]8 m
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|