2015-02-19 18 views
5

Ich bin haben eine solche statische Klasse Prozedur in meinem Rekord:Verweis auf Klasse Verfahren

TRec = record 
    class procedure Proc; stdcall; static; 
end; 

Jetzt brauche ich Anordnung solcher Klasse Verfahren in meinen Rekord:

TRec2 = record 
    Procs: array of TClassProcStdcallStatic; 
end; 

Dies ist möglich, und wie TClassProcStdcallStatic ermitteln?

Antwort

5

definiert es wie folgt:

type 
    TClassProcStdcallStatic = procedure; stdcall; 

Das static Schlüsselwort bedeutet, dass das Verfahren keinen Self Zeiger aufweist und ein einzelner Zeiger Funktionstyp. Im Gegensatz zu of object Doppelzeiger-Funktionstypen.

+0

und dies wird Klasse statische Verfahren sein? –

+0

Ja, dieser Typ wird Ihren Bedürfnissen entsprechen –

+0

Ah, das haben sie endlich behoben. In D2007 musstest du noch casten. (Und "TRec" zu einem "Objekt" anstelle von "Record" zu erklären, um einen internen Compilerfehler zu vermeiden.) –

Verwandte Themen