|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
% l0 t3 d. A( e* x" r9 G: f: wis
" I5 h6 G+ N3 W2 W7 |- k- X& ?6 X3 hdo
+ {) y& |. ?3 \4 d# X1 b waituntil EventController.simTime = Schedule[now_depart_num];
3 [( O# `1 T+ O( g5 s( K if zhuZhan.empty = false
/ r1 L9 j; J C# [" ? then : }0 a* ^/ f; n' f
zhuZhan[1].move();
5 v' ]8 Q" l5 P+ S! H a* Y6 K9 T1 S3 ^ now_depart_num = now_depart_num + 1; , ^0 a. P3 T6 M4 c6 Q1 m5 z$ J- W
else
) M7 f# ?8 @% Z waituntil zhuZhan.empty = false;
8 `* A% u' M4 Q+ {) h% t% s zhuZhan[1].move();
% A1 z/ M0 X! X) X! E- p now_depart_num = now_depart_num + 1;
) x( c' F# G- A. i1 u" a end;
) {% Z2 F$ b* [! a) t7 s, a" Z* N" Aend; Q9 Z S$ x; x; i+ j: W
9 v6 _; M' `* A ^# j
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. ( m% v0 F# n" l1 r8 B% k$ R
若是增加一个局部变量,如下:
/ ~8 r" \8 w+ c: h8 G6 Zis
' N; b8 }# O5 z* ~, R depart_time : time;* Y6 e0 @! e: u- n( P+ T: [# A
do 1 \2 ^/ o8 T1 V# j# w' r
depart_time := schedule[now_depart_num];/ U3 p/ e, o9 s) U: _& @
waituntil EventController.simTime = depart_time;
5 Z# `# g- w% v, s. W- r; {& G) w 。。。( A3 R2 P! z' u+ D
又会出现syntax error near line 5 at <;>!
) H |# {& o9 T1 z$ _6 m, j$ n% Z% @' {: X
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|