supposedlyGlobalVariable := "blah"
ARoutine()
{
localVariable := "asdf"
MsgBox, The global variable value is %supposedlyGlobalVariable%. The local variable value is %localVariable%.
}
^!X:: ;This assigns the hotkey CTRL + ALT + X to run the routine
ARoutine()
return
Eseguire il codice e il risultato è:variabile globale non ha portata globale
"The global variable value is . The local variable value is asdf."
I documentation stati:
portata variabile e dichiarazioni: Con l'eccezione degli enti locali variabili nelle funzioni, tutte le variabili sono globali; ovvero, il loro contenuto potrebbe essere letto o modificato da qualsiasi parte dello script.
Perché la variabile globale non ha ambito all'interno della funzione?
Questo è contro-intuitivo. Se una variabile è globale, ma non all'interno di una funzione ... allora dove è globale senza richiedere un modificatore? –
@ P.Brian.Mackey Ho aggiornato la mia risposta nel tentativo di indirizzare il tuo commento. –