您可以通过减少循环中的计算量来缩短处理时间。此外,读取时间取决于变量类型。最快的是以 @ 开头的临时变量,然后是以 # 开头的全局变量和以 % 开头的系统变量。最慢的是以 ! 开头的结果参数和的设定参数。
各个变量之间的速度差异非常小,但如果在 FOR 语句中使用差异就会很大。
例如:FOR @a=0 TO 49
#Dist[@a]=LnDist(Line(!U[0009].RSLT.DLXY1:AB,!U[0009].RSLT.DLXY2:AB), !U[0002].RSLT.XY[@a]:AB)
NEXT
在上例中,如果循环中包含 Line(!U[0009].RSLT.DLXY1:AB,!U[0009].RSLT.DLXY2:AB) 的部分被放在 FOR 语句之外,并存储在 #line 线性变量中,然后在循环中引用该线性变量,这样就能缩短处理时间。
#line=Line(!U[0009].RSLT.DLXY1:AB,!U[0009].RSLT.DLXY2:AB)
FOR @a=0 TO 49
#Dist[@a]=LnDist(#line,!U[0002].RSLT.XY[@a]:AB)
NEXT
在经过上述改动后。计算处理时间可缩短 0.7 ms 至 0.5 ms。