|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
/ _9 n% n% G4 Q# f: s4 m$ Z, ]is # |1 [' o. r4 g! J
do
( t @8 U9 ]9 `, e+ w+ o2 ~% \ waituntil EventController.simTime = Schedule[now_depart_num];
1 U; e2 W/ x \- I( e$ n if zhuZhan.empty = false/ f9 \- M$ \+ n: H) D
then 3 w N& [3 q W G( i' W" o
zhuZhan[1].move();
7 `; P0 }/ _$ _; r7 ?3 ?- O now_depart_num = now_depart_num + 1; 2 R# F8 B* C- l0 \& i
else2 B7 j4 \3 b8 D! y
waituntil zhuZhan.empty = false;: P. s: L& M: p0 G
zhuZhan[1].move();$ u w( h7 l, A2 C( S# O- H: n; v
now_depart_num = now_depart_num + 1;" F- i! l. N2 {# n
end;
* g, S% _2 C+ z3 A) U+ B% Nend;% |; u0 p- J6 u2 O# |& C0 j4 ~ t
, j+ k3 C$ a m1 d$ ~- u. m但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
, ~) J, ?, J# q/ M若是增加一个局部变量,如下:* \, _7 r. P8 E4 G5 C' W2 Q3 ?
is ! |& \1 N! {8 Q4 _* T7 K% O* ]4 U
depart_time : time;
8 S/ d1 L) L2 U7 ?" D* Fdo
2 k/ s6 |0 E! g/ L" B* o depart_time := schedule[now_depart_num];, G6 r4 j+ B9 E5 @7 I( S: b' Y5 [
waituntil EventController.simTime = depart_time; 4 O1 F* t3 T0 C* b1 l
。。。' z" Q/ Q3 u. T0 V( i; ?) E p
又会出现syntax error near line 5 at <;>!# |+ K! B6 ?' a% k: m3 h1 b7 o
+ N( X. G' x! z- h
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|