Ich habe beim Rumexperimentieren folgendes festgestellt:
Beim Übergeben von Parametern an eine Prozedur werden diese (anscheinend) von hinten nach vorne, also vom letzten
zum ersten, abgearbeitet.
Code: Alles auswählen
Define myVar.s
Procedure dummy(P1.i,P2.i,P3.i)
EndProcedure
Procedure Param2()
Shared myVar
Debug myVar
ProcedureReturn #True
EndProcedure
Procedure Param1(lokVar.s)
Shared myVar
myVar = lokVar
ProcedureReturn #True
EndProcedure
Procedure Param3()
Shared myVar
ProcedureReturn #True
EndProcedure
dummy(Param1("Hallo Welt"),Param2(),Param3())
dummy(Param2(),Param1("Hallo Welt"),Param3())Beim ersten Durchlauf ist sie unbekannt, da die Prozedur, welche den Wert zuweist, noch nicht aufgerufen wurde. Entsprechend ihrer Reihenfolge bei der Parameterübergabe.
Meine Frage wäre, ist das grundsätzlich so, dass die Reihenfolge der Abarbeitung vom letzten zum ersten ist oder gerade mal ein Zufall.
Wenn ich mich darauf verlassen kann, könnte ich dies als Feature nutzen.