Seite 1 von 1

Eine Procedure durch eine Variable aufrufen

Verfasst: 23.11.2008 01:49
von dreamtec
Hallo,

ich hab mal ne Frage bezüglich Prozeduren. Ist es irgendwie möglich eine Prozedure in einer Variablen zu speichern (oder besser gesagt den Pointer in einer Variablen speichern), und mit hilfe dieser Variablen die Prozedure aufrufen?

Also ich meine sowas in der Art:

Code: Alles auswählen

Procedure test()
  Debug "kleiner Test"
EndProcedure

a = @test()

a ;hier soll durch die Variable a die Procedure test() aufgerufen werden
Dies müsste doch irgendwie möglich sein, oder? Immerhin übergebe ich doch bei dem Befehl CreateThread auch nur einen Pointer, und die Prozedure wird ausgeführt.

Verfasst: 23.11.2008 01:51
von cxAlex
Meinst du sowas?

Code: Alles auswählen

Prototype myProc()

Procedure test()
  Debug "kleiner Test"
EndProcedure

a.myProc = @test()

a() ;hier soll durch die Variable a die Procedure test() aufgerufen werden 

Verfasst: 23.11.2008 02:23
von STARGÅTE
ich glaube er meint es ehr so:

Code: Alles auswählen

Procedure test() 
  Debug "kleiner Test" 
EndProcedure 

a = @test() 

CallFunctionFast(a)
Wobei a besser zu *a gemacht werden sollte

Verfasst: 23.11.2008 07:43
von KatSeiko
Kann man in der Variable eigentlich einen Aufruf mit Parametern speichern?

Verfasst: 23.11.2008 10:04
von cxAlex
Natürlich:

Code: Alles auswählen

Prototype myProc(dummy.s)

Procedure test(Text.s)
  Debug Text
EndProcedure

a.myProc = @test()

a("Test")

Verfasst: 23.11.2008 13:21
von dreamtec
@cxAlex und STARGÅTE

Vielen danke euch beiden. Beide ansätze bringen mich weiter.