hi,
bin gerade dabei mit prozeduralen Typen zu "spielen"
in deinem Beispiel ist aber die "plus"-function ist alleinstehen, gehört zu keiner klasse.
Zitat von
sakura:
Also folgender Code wird bei mir problemlos kompiliert und ausgeführt.
Delphi-Quellcode:
function Plus(X, C: Integer): Integer;
begin
Result := X + C;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
F: function(A, B: Integer): Integer;
begin
F := Plus;
ShowMessage(IntToStr(F(1, 2)));
end;
...
...
ich würde gern was in der richtung machen :
Delphi-Quellcode:
TForm2 = class(TForm)
Button1: TButton;
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
function somefunc : Integer;
Delphi-Quellcode:
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
private
{ Private-Deklarationen }
var
F, G: function: Integer;
I: Integer;
....
f := tform2.somefunc;
i := f;
..also meiner prozedurale Variable eine Funktion zuweisen die in einem anderen Formular / Klasse defineirt ist....und da meckert delphi immer noch...
in der Delphi Hilfe scheinen alle zusammen zu gehören:
Delphi-Quellcode:
var
F, G: function: Integer;
I: Integer;
function SomeFunction: Integer;
...
F := SomeFunction; // Zuweisung von SomeFunction an F
G := F; // Kopieren von F zu G
I := G; // Funktionsaufruf; Zuweisung des Ergebnisses an I
...irgendwelche Tipps wie ich das lösen kann ???
gruss
daniel