|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
% a" S" q# N1 c# A9 `, c5 iis 5 \2 S N, p3 R
do : Q9 |1 C1 A2 l& L, {9 i& h# S( s4 F: N
waituntil EventController.simTime = Schedule[now_depart_num];' x8 y+ T4 g# i- Q1 b7 e! K, O% L
if zhuZhan.empty = false3 P1 B/ d( P6 B. L4 t
then
+ K7 a( Z+ ? `6 [ zhuZhan[1].move();8 b- }# E) ]! b/ y3 b& v, i( e
now_depart_num = now_depart_num + 1; ' W6 M7 ^1 V. [! W
else8 P/ R; A, x K$ s
waituntil zhuZhan.empty = false;$ B- A+ t) j6 ?; r8 A
zhuZhan[1].move();( z) a. r6 y8 o7 s7 @+ N9 {: ^6 F5 h
now_depart_num = now_depart_num + 1;+ ^: g) H) O7 O5 q5 u C3 i
end; $ V! |6 L$ n Z6 R6 `1 G3 e
end;
# N7 ~% G: B4 p! [" J5 H, z. ]& b2 B- v+ C" X: l8 p
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. $ A" B! t0 y- s0 G9 ]: O9 `
若是增加一个局部变量,如下:
; N1 L( b- O' e fis
: |9 ]2 T" o! v5 |7 d H. K {8 F depart_time : time;. F# a y1 M' I( X: n( w
do - u* w c4 p9 G% H
depart_time := schedule[now_depart_num];8 w0 f5 {7 w+ u' r0 Y4 H2 g" `7 {
waituntil EventController.simTime = depart_time; 8 U% q x) O% T( g! {2 m
。。。
W) _6 C7 ]# _又会出现syntax error near line 5 at <;>!1 L1 D' M& m6 C, ^: V
" [: v9 o* { b, ?+ E8 }; i各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|