Hvis du mener at assigne naar du siger "caste" en pointer til en funktion, saa er det et ja! Og det er oven i koebet ret let!
function Test : Integer;
begin
Result := 2;
end;
procedure TForm1.FormCreate(Sender: TObject);
type
Func = function : Integer; //Holder funktionens struktur!
var
F : function : Integer; //Holder en pointer til funktionen!
P : Pointer; //Unsigned Pointer
begin
F := @Test; //Assigner funktionen til F
P := @Test; //Assigner funktionen til P
ShowMessage(
IntToStr(F) //Returnere result fra funktionen F
+#13+
IntToStr( Func(P) ) //Returnere ogsaa result fra funktionen
+' '+
IntToStr( Integer(P) ) //Viser adressen som P holder
);
end;
Jeg har lavet 2 maader at goere det paa F og P er begge pointers! I haab om at en af dem er det du mener!
Men maaske har jeg misforstaaet dig lidt!