8
Je ne comprends pas pourquoi la petite application de console suivante ne compile pas:En utilisant Delphi, impossible d'utiliser le type anonyme comme type d'enregistrement?
program Project1;
type
TProc = reference to procedure;
TMyRec = record
Proc: TProc;
end;
var
myProc: TProc;
myRec: TMyRec;
begin
myProc := procedure begin writeln; end;
myProc; // compiles fine
myRec.Proc := procedure begin writeln; end;
myRec.Proc; //E2014 Statement exptected, but expression of type 'TProc' found
end.
Les anciennes procédures pascal peuvent être invoquées sans parenthèse, je suppose qu'une procédure-ref est différente. –
Merci, je ne m'attendais pas à ça. Quelle pourrait être la raison de cette exigence? Combien cela est différent de myProc; ligne? –
@WarrenP: IIRC cela était aussi le cas avec les références de méthode de classe, au moins quand vous les avez passées dans une autre fonction comme argument ... –