|
|
我写的一个程序想实现在IObuffer中的MU按时刻表exit,若需要exit的时候IObuffer中没有MU,那一旦IObuffer中有MU就立即exit。IObuffer的名字是zhuZhan,程序如下:
8 ]( o3 t! m# yis J1 }( w! B! v `1 }/ i( w* b
do 4 y4 \! Z9 c7 c* m. [4 |
waituntil EventController.simTime = Schedule[now_depart_num];$ B2 y4 U9 ^) b
if zhuZhan.empty = false( r Y) ^2 r! k f1 S- j
then * Z! |! b# K! {. |! a. I; ?
zhuZhan[1].move(); O1 k6 u$ b$ b: E5 Y: U( v/ K
now_depart_num = now_depart_num + 1;
W$ D0 ~3 ?' f* z1 k+ n else" a, S5 K9 E6 u+ u; P' c& R
waituntil zhuZhan.empty = false;
* {) w# D! i) j3 K7 d zhuZhan[1].move();. J+ _. H! i. c# s: x& i# Z
now_depart_num = now_depart_num + 1;9 R. W% c! [- G f4 f7 z
end; 2 A- n7 g( e5 s) V
end;
6 b Q% q/ k, a6 p' m9 _4 B, Y. Z4 ]
) S/ [$ J, U! z0 ^) L但是一直说有错误,提示信息是:access to tables is not allowed within a waituntil statement. & Z" Z1 t' ^* b; p2 Q5 {
若是增加一个局部变量,如下:
8 G6 y) W: J! w6 G; v Y1 {( ]is - u: o" }' f2 k: F4 v
depart_time : time;3 [0 J' R- \& ^! u; U$ j
do
, i* M" q& D( K- }4 `2 Y8 L depart_time := schedule[now_depart_num];
( {, X3 N. N) k& n8 y waituntil EventController.simTime = depart_time;
% r) `4 j4 _/ p! H) B3 W 。。。
/ W, v! o8 ^. c6 M- ?又会出现syntax error near line 5 at <;>!
) L1 i% `, k, u# o1 Q1 T$ C( a
5 P3 y: I3 F9 ?/ w6 o$ t* }各位大侠帮帮忙,或者教我怎么改程序的错误,或者教教我用别的方法实现我的目的,谢谢了! |
|