内联记录变量声明错误

时间:2019-02-15 21:29:47

标签: delphi runtime-error delphi-10.3-rio

如果我使用内联声明的记录变量来构建动态记录数组,则会出现访问冲突错误。不会一直发生,而是切换回记录变量的常规声明,但我没有看到错误。我想知道这是内联变量声明的限制还是我做错了什么。

procedure TForm1.FormCreate(Sender: TObject);
Type
  RFruit = record
    FruitName : string;
    FruitBitMask : Int64;
  end;
Var
//AFruitRec : RFruit;
  Fruits : array of string;
  FruitList : array of RFruit;
begin
 Fruits := ['Orange','Apple','Pear','Peach','Grape'];
 Var AFruitRec : RFruit;
 for var i :integer := 0 to length(Fruits) - 1 do
 begin
   AFruitRec.FruitName := Fruits[i];
   AFruitRec.FruitBitMask := Int64(1) SHL i;
   FruitList := FruitList + [AFruitRec];
 end;
end;

0 个答案:

没有答案