|  | 
 
| 请教关于PortalCrane的问题,实在想不明白。发现placeIsFree调用的一个问题:当通过PortalCrane的Strategy下的自定义可利用位置(Define your own method for searching an available location)时,自定义程序为:- j$ ], s7 i$ ~" ^4 w; K; c6 M (byref x1,y1,z1 : integer; part : object) : boolean5 y" G$ c: C8 H/ x
 is
 . _: o( e* R- V5 }1 v' `        i,j,k,w : integer;
 ! t$ j$ \7 ?( G) _do
 2 ~% Q, m& g) Y, {# U2 A" S. {# v        for k := 1 to Crane.getStoreZDim loop
 * l5 w# y1 G' X" v                for i := Crane.getStoreXDim downto 1 loop
 : t+ ^1 W. _" D4 E                        for j := 1 to Crane.getStoreYDim  loop
 1 l% K3 s2 h6 Q7 M1 }                                if Crane.placeIsFree(i,j,k) then
 ) u! Z7 {/ N' ?                                        x1 := i;
 : |6 X/ ~' H3 d$ R. `, R; }                                        y1 := j;
 - I$ \8 o2 e: n8 t+ }) k% z                                        z1 := k;
 ( z7 t( S% Q" i$ f                                        if Crane.placeIsFree(14,1,2) then8 ]. h; Q. B! f
 w:=1
 9 A. O1 U9 o; L% w8 Q' g  R                                        end;9 E: x# I6 \* d; P- J* O
 return true;4 f$ Z: G0 b+ F
 end;# e; E9 G' D& h4 j" B+ j* H: `
 next;
 ) w2 m: J2 ?9 W3 {6 O8 G' I8 d                next;, v/ G3 y. B% q# y3 n9 \
 next;
 / `3 N. I( D4 c2 ^+ A" E5 o        return false;6 \. j, B( _- F, M4 Z  }) y
 end;  n4 U9 G- v; w! q# Y' q& b. A0 ]9 `
 判断的位置(14,1,2)的Free是True;而在某个程序中直接调用placeIsFree时, 判断的(14,1,2)的Free是False。保证两次判断位置(14,1,2)一直没有被占用。想知道是什么原因?placeIsFre方法到底该如何用?请求赐教?3 ~, _$ p# M% d! I$ g3 D; \
 
 | 
 |