|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
' z% P0 h2 G* y; K8 Tis 3 T7 r6 ]! ?$ G4 i% H/ f' B0 k( }
do
0 J3 o3 x( Q* Q6 {! T: }' \ waituntil EventController.simTime = Schedule[now_depart_num];! L' \' C0 E; A: v1 I) z
if zhuZhan.empty = false
" C" s( n8 ?% l then 4 ^! I* V) e( a2 u2 ?' k- D0 n( E# z
zhuZhan[1].move();8 B' B" E8 J- N# l5 B! `/ l
now_depart_num = now_depart_num + 1;
b5 |' {5 m% |2 B6 V7 B else
* m- U# @8 T# s. p! ? g waituntil zhuZhan.empty = false;
2 a v; t G- x! C. | zhuZhan[1].move();
( ?, k" t+ M, n4 Z5 h0 p now_depart_num = now_depart_num + 1;& |: R* O+ G1 b1 P
end;
. X& N; {# a9 ]' |end;
5 Z) J2 t: [8 K9 M# k6 i5 v( f3 h5 r2 `2 t6 {3 L
但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. 0 i. b# w$ @5 ^
若是增加一个局部变量,如下:8 z- U( H( J" S. g
is
/ D+ b/ l2 f# Z3 ^! U depart_time : time;4 {4 [7 }: O0 j9 [3 r
do 7 Y, t! l5 @' F* {
depart_time := schedule[now_depart_num];4 q; ~2 W' S( ?2 A
waituntil EventController.simTime = depart_time; 6 A7 V& I% ^$ @% u% j# B: p
。。。; w- W! h4 v9 p V! y
又会出现syntax error near line 5 at <;>!
1 x) Y, b0 H4 q, b
- Z7 O [3 Y% S4 U% G; \( x各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|