- Irfanview: Tipps & Tricks! (94x gelesen)
- 169.254.1.1: So geht's zur Fritzbox! (25x gelesen)
- Pfund Zeichen (£) am PC machen: So geht's! (19x gelesen)
- Malwarebytes Anleitung (19x gelesen)
- Wieviel MB sind ein GB (Gigabyte) (18x gelesen)
|
|
|||||
|
Schnell-Tipp: “Global symbol $Variable requires explicit package name”Ein häufiger Anfänger-Fehler in Perl ist die Meldung “Global symbol $Variable requires explicit package name” – die lässt sich aber ganz einfach beheben! Ausgelöst wird sie, wenn man die Variable, die in der Fehlermeldung genannt wird, nicht zuvor deklariert hat, das Perl-Skript aber durch die Anweisung “use strict” genau dies fordert. Zum Beheben des Fehlers muss daher die Variable einfach nur vor der ersten Verwendung deklariert werden, anschließend kann man sie ganz normal (und ohne die Fehlermeldung “Global symbol $Variable requires explicit package name”) benutzen.
“Global symbol $Variable requires explicit package name”Das folgende kurze Programm wird die Fehlermeldung auswerfen, wenn die Variablen nicht zu Beginn deklariert wurden: $x = 12; $y = 18; $z = $x + $y; Zum Beheben kann man sie dabei einfach deklarieren, in dem man vor die erste Verwendung “my” schreibt: my $x = 12; my $y = 18; my $z = $x + $y; Hat man die Variablen schon einmal deklariert (wie $x und $y in Zeile 1 und 2) kann man sie anschließend ganz normal nutzen – wie in dem Beispiel oben in Zeile 3: Hier muss das “my” nur für $z vor der ersten Verwendung angegeben werden.
“Global symbol requires…”-Fehler bei FunktionenDer gleiche Fehler tritt aber auch auf, wenn man eine Variable nur in einer Funktion oder auch nur in einem bestimmten Programmteil – zum Beispiel dem Code, der nur bei positiver IF-Bedingung ausgeführt wird – deklariert, aber später darauf zugreifen möchte: my $x = 12; my $y = 18; if($x > 0 && $y > 0) { my $z = $x + $y; } print $z; Auch dieser Code führt zu dem Fehler – richtig müsste das Programm so aussehen:
Fragen zu diesem Tipp? In unserem Webmaster-Forum helfen wir weiter!
|
Mehr Tipps zu Schnell-Tipp: "Global symbol $Variable requires explicit package name"Liberty Global erwirbt Unitymedia Der drittgrößter Betreiber von Breitbandkabelnetzen, Unitymedia mit Sitz in Köln, ist an die... Tipp: So gibt's die Google+ Einladung Für Google Plus braucht man zur Zeit noch eine Einladung, Googles neues soziales Netzwerk Goog...
Ähnliche Fragen:
Tipps-Rubriken
© Computerhilfen.de (17801x gelesen) Schnell-Tipp: "Global symbol $Variable requires explicit package name" |
|