我想要做的是将一个匿名方法作为函数结果分配给一个相同类型的变量。德尔福抱怨说不能做这个分配。很明显,我想为Delphi函数分配“GetListener”函数而不是该函数的结果。任何帮助都非常感谢。作为函数结果的匿名方法
type
TPropertyChangedListener = reference to procedure (Sender: TStimulus);
TMyClass = class
function GetListener:TPropertyChangedListener
end;
....
var MyClass: TMyClass;
Listener: TPropertyChangedListener;
begin
MyClass:= TMyClass.create;
Listener:= MyClass.GetListener; // Delphi compile error: E2010 Incompatible types: TPropertyChangedListener' and 'Procedure of object'
end;
谢谢Serg。正是这两个()我正在寻找。 Soemtimes事情是如此容易..如果你知道他们。 – iamjoosy 2010-05-07 13:21:24
+1,但现在我的头痛.. – 2010-05-07 15:17:13
这就是为什么我总是使用C的调用语法(aka()括号)来清楚它是什么时候的调用。 – alex 2010-05-07 16:32:23