我不明白为什么以下小型控制台应用程序无法编译:
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.
最佳答案
您必须添加括号来表明您正在调用该过程;即,
myRec.Proc();
关于delphi - 使用Delphi,无法使用匿名类型作为记录类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7788113/