|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
6 n' l0 U5 q5 G2 P) t- D, Ris
: A% J; B% E8 _% G/ N# J( e0 ]+ M1 _" Sdo
2 ~/ Q( n+ L4 h2 d% o/ y3 h waituntil EventController.simTime = Schedule[now_depart_num];
: [1 b) F- n8 \; S8 C+ c/ u if zhuZhan.empty = false/ P$ R ]0 B4 X
then
2 l+ _/ p( t* b& g$ ?* O$ P4 ~4 S) o: { zhuZhan[1].move();
. A1 G; H, d+ w u2 h9 U" h now_depart_num = now_depart_num + 1;
- v" o6 d! N% U else* G2 o) x6 D2 P- n+ c
waituntil zhuZhan.empty = false;
; k. _) I r* E# C' y% _4 f zhuZhan[1].move();. W- H+ G2 S- r# W1 {
now_depart_num = now_depart_num + 1;* k% j/ t4 Y' I( _7 u1 @0 f
end; . z+ \4 h. p2 f5 z4 U
end;
* E: R! `" ]1 O, I* \& q
2 ]( o' _6 d" A7 {. `: @但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. - t/ \! d# l& h* Z
若是增加一个局部变量,如下:
7 n' d2 s3 F# } y, Yis ( g- C; M' U& M! ]6 U+ Z# }2 t
depart_time : time;
( L5 @, {, Q8 {7 M* ndo
$ G; Z$ ~0 J: Z+ C4 H" _4 d7 }- [ depart_time := schedule[now_depart_num];& s9 d5 E' m* }: z: K2 k$ r4 W
waituntil EventController.simTime = depart_time; # a/ e/ l, ?: n5 m
。。。
8 O6 N: V7 j& p% E- t5 G又会出现syntax error near line 5 at <;>!
& `3 W2 L. o9 x$ G' B3 P; _0 \$ J) {- W. r* G) l3 p8 V) K
各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|