Hallo allemaal!
Ich habe eine als Local im Script deklarierte Variable.
Warum gilt sie in einer Function, wenn sie doch gar nicht Global ist?
Und warum kann sie dort so verändert werden, dass sie den neuen Wert auch außerhalb annimmt?
Das dürfte nach meinem bisherigen Verständnis doch nur bei einer ByRef-Übergabe möglich sein.
Spoiler anzeigen
[autoit]
Opt("MustDeclareVars", 1)
Local $Zahl = 111
MsgBox(0, "Vor Funktionsaufruf", "Zahl alt = " & $Zahl) ;liefert 111
TestFunktion()
MsgBox(48, "Nach Funktionsaufruf", "Zahl verändert = " & $Zahl) ;liefert 999 !?
Exit
Func TestFunktion()
$Zahl = 999
EndFunc
Das interessiert mich sehr, denn es betrifft die fernwirkungsfreie Programmierung...