|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:6 C3 F9 d, Z9 a- g/ W
is u5 a7 X5 z5 c
do
3 Y, G. B7 e8 _& @8 K) @4 Y' j/ E waituntil EventController.simTime = Schedule[now_depart_num];
, y' n, I1 m' l( f$ w- G if zhuZhan.empty = false
8 z9 j8 M# s. Q4 T; |+ J6 G then + x. o0 w) o8 Y5 ?* a* O
zhuZhan[1].move();0 t; o7 O8 ?3 N8 w; H( E* q
now_depart_num = now_depart_num + 1;
2 Z/ f- l" ?! P0 I# ~: n else/ E* k# g- P6 Q; b; l6 u
waituntil zhuZhan.empty = false;
7 {/ E5 B8 o4 C- @1 U- j s9 n zhuZhan[1].move();, T$ j' o' V5 D J
now_depart_num = now_depart_num + 1;
* O' |3 Z; K* W# U2 G end; , Y' |& P) t* H- c, a0 V
end;9 G1 j7 |4 _8 e i- K
( @/ Y/ z& U. x" \& v) d5 P
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. 6 ^6 i9 }! v ]* b
若是增加一个局部变量,如下:
" B2 {, m2 X4 S1 I. X, M3 Tis
7 r$ ^4 k6 I: ? depart_time : time;0 [6 f! m/ Q% m" g9 ^6 S
do % |# W5 z% Q' `8 p
depart_time := schedule[now_depart_num];; ^0 U$ c. v$ ~4 L$ z6 }
waituntil EventController.simTime = depart_time; _( ^, j9 M( M2 m$ H) r$ Z
。。。2 _% H$ K8 N+ V7 s4 k
又会出现syntax error near line 5 at <;>!, L \9 {) S. J6 r# n
1 W5 p# h3 }! d- _+ _
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|