Gegenteil von Default Local<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Also nur etwas syntaktischer Zucker.
Es wäre wirklich schön, wenn es ein Gegenteil davon gäbe, lokale Variablen für Funktionen zu deklarieren.
dh statt:
Beispiel = Funktion ({ A , B } , { C , D , e , F , G , H , ich , J , k , l , M , N , Ö , P , Q , R , S , T , u , v , w } ,
C = A + B ;
D = C + A ;
//...
X = v + w ;
j = X + B ;
) ;
drucken ( X , j ) ;
Ich könnte schreiben:
Beispiel = Funktion ({ A , B } , { Standardlokal , X , j } ,
C = A + B ;
D = C + A ;
//...
X = v + w ;
j = X + B ;
) ;
drucken ( X , j ) ;
Re: Gegenteil von Default LocalDas Gleiche gilt für local:x, wenn Sie lieber spontan einen Bereich festlegen möchten.
F = Funktion ({} , {} ,
X = "globaler Geltungsbereich ersetzt" ;
lokal : X = "Funktionsumfang x" ;
lokal : j = "Funktionsumfang y" ;
drucken ( :: X , lokal : X , j ) ;
) ;
F () ;
Wegen der Bereichsregeln für Variablen ohne Bereich müssen Sie daran denken, ::x explizit aufzurufen.

Re: Gegenteil von Default LocalIch habe here:x noch nie verwendet, aber diese Syntax macht absolut Sinn.Danke!
Re: Gegenteil von Default LocalIch habe explizite Locals in Funktionen verwendet.Ich denke, ich werde Default Local in meinem nächsten Projekt ausprobieren.
Re: Gegenteil von Default LocalIch denke, wenn Sie alles erfassen, können Sie bekommen, was Sie wollen. Korrigieren Sie mich, wenn ich nicht folge, aber .... Zum Beispiel
::x= "globaler Geltungsbereich" ;
::y= "globaler Geltungsbereich" ;
Namen sind standardmäßig hier ( 1 );
x= "hier Geltungsbereich" ;
y= "hier Geltungsbereich" ;
drucken (::x, hier:x, ::y, hier:y);
f = Funktion ({}, {Standard Lokal},
hier: x= "hier Scope ersetzt" ;
:: x = "globaler Geltungsbereich ersetzt" ;
x= "Funktionsumfang x" ;
y = "Funktionsumfang y" ;
drucken (hier:x, ::x, x, y);
);
F();
drucken (x, y); // wird das sein, was diesen Variablen in zugewiesen wurde HIER Namensraum.
drucken (::x, ::y); // wird das sein, was diesen Variablen in zugewiesen wurde GLOBAL-Namensraum.
// keine Möglichkeit, auf lokale Variablen zuzugreifen (eigentlich der Punkt von local).
Re: Gegenteil von Default LocalEin anderes Beispiel:
X = "globaler Geltungsbereich" ;
j = "globaler Geltungsbereich" ;
Namen sind standardmäßig hier ( 1 ) ;
X = "hier Geltungsbereich" ;
j = "hier Geltungsbereich" ;
drucken ( :: X , X , :: j , j ) ;
F = Funktion ({} , { Standardlokal , X } ,
X = "hier Scope ersetzt" ;
j = "Funktionsumfang" ;
drucken ( X , j ) ;
) ;
F () ;
//x != y aber es tut
drucken ( X , j ) ;