|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
5 F2 h, J6 x0 ^+ c' ~; k vis * d- f2 u% }% l1 G/ }1 j
do
; Q/ m) U; G" ` waituntil EventController.simTime = Schedule[now_depart_num];
/ {, ?- V$ m" `) @1 ?: S if zhuZhan.empty = false
4 {8 u1 R8 Q; C then
- Z1 s1 I: s2 t3 Y# v zhuZhan[1].move();
4 C5 I% B" f& W$ o8 r+ h7 N now_depart_num = now_depart_num + 1; 8 B$ @3 a) @$ _- i( A8 Q8 ?1 Y0 [
else
+ [) x* P: B3 j. g% B' `) m# ~ waituntil zhuZhan.empty = false;
0 v/ _, W1 S% @ zhuZhan[1].move();
' D7 N" U! o+ N now_depart_num = now_depart_num + 1;
1 f# d& w; B, z end;
3 n$ Q/ ^9 q5 M" Gend;
8 M; Q: e2 q; |# j2 R7 H. a* S+ I9 _* [! ^; W4 r% q0 W8 L
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. 1 q9 B/ b: ^: ~8 C5 Z) n+ x& w
若是增加一个局部变量,如下:
4 m( E6 h1 x" r2 Uis
% Z2 J* I) U) @! ? depart_time : time;' T% i# P3 [* v
do , k3 J- m$ ]7 f" v( Q6 h: d
depart_time := schedule[now_depart_num];9 S- P; j0 X, U4 m
waituntil EventController.simTime = depart_time; 2 M/ N/ [4 E" X
。。。; k" E( f9 x4 k# Y0 r2 [9 T/ B
又会出现syntax error near line 5 at <;>!* }7 n/ m; n% x" n6 | G0 l
: y P8 C' J3 H: I* y- k各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|