|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:. \7 e! X& B3 p; x
is
# P. Q2 e: C5 ^. g* Pdo ) Q) c1 R4 G I4 [' I3 F5 [
waituntil EventController.simTime = Schedule[now_depart_num];
% X, y6 I; I$ D; M( j if zhuZhan.empty = false
8 W( Q8 k. K) N6 o2 p& [ then
1 I: R8 x5 x" F$ B zhuZhan[1].move();$ M5 N" V) a- S. w/ N
now_depart_num = now_depart_num + 1;
8 M$ z# O: b) ^& o: u1 p( g else
3 Z+ r2 S# M8 E) \$ V& Q. r3 K waituntil zhuZhan.empty = false;( B' B1 A5 q m N+ \
zhuZhan[1].move();; f& x8 O3 s1 J* Z1 u6 ]
now_depart_num = now_depart_num + 1;8 b8 L# |0 R& b8 S8 ]. J7 W5 G
end;
4 h$ b, M( G0 l7 Xend;
1 J/ I4 {1 r1 |/ |$ _* W: C# \1 v9 [7 o8 h
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement.
! f$ G% @! [3 O4 C1 ~3 H/ }' F$ E6 z若是增加一个局部变量,如下:
9 k2 P% B+ o. e+ u" Bis P, \8 T1 G4 I* |
depart_time : time;
: t% n1 ]2 }# D Qdo
8 [0 w2 q. D$ F7 q0 w depart_time := schedule[now_depart_num];
0 e1 r( K8 q9 \# f, N- Q waituntil EventController.simTime = depart_time; . {( O* D( d% H2 E: J
。。。
) L! ]* d: o. k% K. _* f" G又会出现syntax error near line 5 at <;>!% t/ l3 E- F( \9 m
3 A$ m+ p$ L6 F3 G2 n8 q% J
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|