|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:4 m* g# o! ?7 g8 F3 P# r
is
- S- ?* j5 G% A, d i1 }do
7 u. G# @0 @ O" l- d waituntil EventController.simTime = Schedule[now_depart_num];
2 Q" i2 N; d2 f6 l5 w6 V if zhuZhan.empty = false- L, e. K" @! R9 }3 T: ~+ a" S
then
8 Z% X! N0 L% `6 m& m$ a% Z/ p zhuZhan[1].move();
" J& Q% u& Q Y D3 }! Q now_depart_num = now_depart_num + 1;
; f# C/ G" Z+ v( P6 m/ b else
0 q, t# a* G9 r' J2 ^ waituntil zhuZhan.empty = false;( Q; j, L/ r2 k9 o
zhuZhan[1].move();" K( b$ C- r! C9 P0 _6 w4 U4 K% W
now_depart_num = now_depart_num + 1;
2 E! u$ q# o) |* y6 o& s' V end;
7 _, ~& b4 h4 W) o, V7 u* e- \7 E4 E1 P qend;& p9 `; j+ `5 ]
8 f/ L; z1 W" s# x但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. % }! S% @! l* t2 ?. ~
若是增加一个局部变量,如下:
+ f# I+ L( |) e) x9 Tis
8 g' k0 w. p; C# A! u" v0 U: Y depart_time : time;
+ k# b$ t; v/ i2 B6 Pdo
" k. @/ l( y; s, _ depart_time := schedule[now_depart_num];
: {0 q$ }, v5 y T$ p" s. {$ c& A" V waituntil EventController.simTime = depart_time; 2 i* k* I% n8 f5 Q( ^1 E" x
。。。( H) ^! H) S' _' ?1 x: A/ L
又会出现syntax error near line 5 at <;>!( b# @1 z8 D; w: q) E
6 i$ N4 ^9 N3 I% V各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|