Variable und Eigenschaftswert vergleichen - prozeduraler Typ
30. Jul 2008, 21:25
Hallo.
Ich möchte eine Variable und einen Eigenschaftswert vergleichen -- Besonderheit: prozeduraler Typ.
Die Compiler-Fehlermeldung ist: "Nicht genügend wirkliche Parameter". Wie kann ich die Werte vergleichen?
Delphi-Quellcode:
program Vergleich;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
TMyFunc = function (const Item1, Item2: Pointer): Integer;
TMyClass = class
private
FMyProp: TMyFunc;
public
property MyProp: TMyFunc read FMyProp write FMyProp;
constructor Create;
end;
function MyFunc(const Item1, Item2: Pointer): Integer;
begin
Result:=0;
end;
{ TMyClass }
constructor TMyClass.Create;
begin
inherited;
MyProp:=MyFunc;
end;
var
F: TMyFunc;
Instance: TMyClass;
begin
F:=MyFunc;
Instance:=TMyClass.Create;
try
{ Compiler-Fehlermeldung:
E2035 Nicht genügend wirkliche Parameter
if F =| Instance.MyProp then }
if F = Instance.MyProp then
WriteLn('gleich')
else
WriteLn('ungleich');
finally
Instance.Free;
end;
end.
"Es gibt keine schlimmere Lüge als die Wahrheit, die von denen, die sie hören, missverstanden wird."
|