我想在记录中使用对象过程,如下所示:
TCommandRec = record
name: string;
fn: procedure of object;
end;
我可以通过赋值创建一个数组:
commands: array [0..1] of TCommandRec;
...
commands[0].name := '-help';
commands[0].fn := DoHelp;
commands[1].name := '-load';
commands[1].fn := DoLoad;
我真正想做的是声明一个常量:
const
cmds: array [0..1] of TCommandRec =
(
(name: '-help'; fn: DoHelp),
(name: '-load'; fn: DoLoad)
);
但是,我收到 DoHelp 和 DoLoad 错误 - 预期的常量表达式。这是一个类的两个方法。我需要使用一些语法来完成这项工作,还是我在运行时卡住了构建数组?