下面看下程序: var I: Integer; begin for I := 0 to Length(FarrRec) - 1 do FreeAndNil(FarrRec[I]); ShowMessage(IntToStr(Length(FarrRec))); end; 看到了,虽然释放掉了记录数组中的每个单元,然而数组中的长度仍然为1,这就说明系统不会给我们清空数组为0,但是在类的destroy里继承,调用的时候,会释放掉。