Je suis curieux de savoir pourquoi Delphi traite les propriétés du type d'enregistrement en lecture seule:« côté gauche ne peut pas être attribué à » propriétés de type d'enregistrement dans Delphi
TRec = record
A : integer;
B : string;
end;
TForm1 = class(TForm)
private
FRec : TRec;
public
procedure DoSomething(ARec: TRec);
property Rec : TRec read FRec write FRec;
end;
Si je tente d'attribuer une valeur à l'un des les membres de la propriété Rec, je vais obtenir « côté gauche ne peut pas être attribué à » erreur:
procedure TForm1.DoSomething(ARec: TRec);
begin
Rec.A := ARec.A;
end;
tout en faisant la même chose avec le champ sous-jacent est permis:
procedure TForm1.DoSomething(ARec: TRec);
begin
FRec.A := ARec.A;
end;
Y a-t-il une explication à ce comportement?
Cordialement
+1 dans ce 4 Bumped ans après votre réponse! –