|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:% e- J( c9 y8 ^3 Y: I" o
is 4 e6 i( ~3 ?; n8 @; X8 q0 p
do ; o4 T6 N }. k8 Z0 b
waituntil EventController.simTime = Schedule[now_depart_num];
0 S/ q8 j4 A! X& w if zhuZhan.empty = false) X8 h$ `# B+ @, c$ I6 z
then m# Z+ a% b1 z$ q2 F
zhuZhan[1].move();
. ^5 t6 Y& M5 f4 }, S9 O now_depart_num = now_depart_num + 1;
( S0 V3 s6 A4 I! B- q- f* t* {8 A else( T8 h: o) E/ }" G/ Y. `% O
waituntil zhuZhan.empty = false;; j/ C" f8 A* y* \# l( v
zhuZhan[1].move();
# ^4 f+ K9 @' m/ l now_depart_num = now_depart_num + 1;
" Z' L: d6 b7 [$ c W) @ end; 7 Z9 O# f6 \- L2 |, i3 a8 S
end;
$ w2 \3 f; T& s6 b" a3 d8 O2 V `8 f6 K' r( n m7 {
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
; s8 j9 ]& B) \; N0 H若是增加一个局部变量,如下:
& X3 W# a4 L8 ^is - |- j. j5 @ ^/ R3 T
depart_time : time;) N) ^; S" F# x$ ]2 b0 |. f4 x
do / E: h- C. `2 H, X
depart_time := schedule[now_depart_num];
3 b, D, e) |4 y- ]: @ waituntil EventController.simTime = depart_time;
% S! r- T/ ]' G/ [& F 。。。
- Z4 J v0 J4 l9 x1 ?: \又会出现syntax error near line 5 at <;>!! {9 V T' t' Q$ I# e: S& B/ v
2 r! _1 s& z7 r7 W各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|