prototype
Code: Select all
Prototype toto(a,b,c=4)
Define Truc.toto
Declare Bidule(a,b,c)
Truc=@Bidule()
Debug Truc(3,5)
Debug Truc(3,5,6)
Procedure Bidule(a,b,c)
ProcedureReturn a+b+c
EndProcedure
Using CallFunctionFast
Code: Select all
Declare MyProc1(a,b)
Declare MyProc2(a,b)
Dim Address(1)
Address(0)=@MyProc1()
Address(1)=@MyProc2()
Procedure MyProc1(a,b)
ProcedureReturn a+b
EndProcedure
Procedure MyProc2(a,b)
ProcedureReturn a*b
EndProcedure
For i=0 To 1
Debug CallFunctionFast(Address(i),2,5)
Next i
using prototype
Code: Select all
Declare MyProc1(a,b)
Declare MyProc2(a,b)
Prototype Toto(a,b)
Define Truc.toto
Dim Address(1)
Address(0)=@MyProc1()
Address(1)=@MyProc2()
Procedure MyProc1(a,b)
ProcedureReturn a+b
EndProcedure
Procedure MyProc2(a,b)
ProcedureReturn a*b
EndProcedure
For i=0 To 1
Truc=Address(i)
Debug Truc(2,5)
Next i