![]() |
Variable und Eigenschaftswert vergleichen - prozeduraler Typ
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. |
Re: Variable und Eigenschaftswert vergleichen - prozeduraler
Hallo Panthrax,
so sollte es gehen:
Delphi-Quellcode:
Gruß Hawkeye
// if F = Instance.MyProp then
if @F = @Instance.MyProp then |
Re: Variable und Eigenschaftswert vergleichen - prozeduraler
Danke! Geht!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz