如果我使用内联声明的记录变量来构建动态记录数组,则会出现访问冲突错误。不会一直发生,但切换回记录变量的正常声明我没有看到错误。我想知道这是否是内联变量声明的限制,或者我做错了什么。
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;