|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
( J6 ?# r% j! b+ g) i+ A- N; d% L( Ois ) o, S+ @* U' z7 x i+ E- x
do
: X# c1 X9 Q% P# b. ]/ c waituntil EventController.simTime = Schedule[now_depart_num];/ ^, t% {/ c8 k! D, {( O
if zhuZhan.empty = false2 R ]# N% U' m
then
! O6 [1 j- T9 o/ D% \0 y zhuZhan[1].move();/ F* h( t( O) f
now_depart_num = now_depart_num + 1; 3 \! |3 z: ~* ^+ N7 r H
else7 s t+ l! d/ e( ?: z
waituntil zhuZhan.empty = false;
7 U5 o3 L$ r1 a: ?: k zhuZhan[1].move();
& F5 G5 T- y3 C, V& ?1 T/ K( R now_depart_num = now_depart_num + 1;$ P7 n7 C' `$ }% C. y
end; ) p0 t6 T9 C* X* d4 M3 }1 l
end;
0 G7 R& R2 a P- l# s* L& S% M2 \. D$ [* h% I7 z9 G7 `9 {
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
( G' A" t2 h: Z# V若是增加一个局部变量,如下:
6 k* ^% G- Q+ ~" H5 p; e7 C& y, nis $ N, l) }& m% Z1 W1 Y& `
depart_time : time;2 c2 o5 i! u. p2 k. p1 ?
do
# V2 p1 u, W( [; @6 c0 c depart_time := schedule[now_depart_num];
% ]9 {3 Q0 ?) X( P9 n, A9 t waituntil EventController.simTime = depart_time;
. I# V# M' Y% {5 m8 r% g; X 。。。' X7 Y2 T' \ b) Y# e# y) A$ p
又会出现syntax error near line 5 at <;>!( d3 U$ v5 g; [. O! [: j
4 Z1 k. s: D: Q# }, ]
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|