Schrift
[thread]8697[/thread]

Fehler in leerer Zeile: "Useless use of private variable"



<< >> 2 Einträge, 1 Seite
Gast Gast
 2007-01-30 14:01
#73832 #73832
Hallo,

ich schreibe gerade an einem Skript zur Interaktion mit dem Nutzer (fragen stellen und vom Nutzer beantworten lassen).

Mein Problem ist folgende Subroutine:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
sub print_sub_menu
{
my %sub_menu = %{(shift)};
my $i = 1;
my $index = $i; #index of the hash
#get every item of the input-hash
#needs $index for cases, where not every number has a corresponding value
for ($i; $i < keys(%sub_menu); $i++)
{
while (! exists $sub_menu{$index})
{ $index++; }
print "\t$index - $sub_menu{$index}\n";
$index++;
} #<-- beanstandete Zeile
return 0;
}


(Aufruf der Sub: print_sub_menu(\%hash) )

Beim Ausführen des Skript wird folgende Warning gebracht:
"Useless use of private variable in void context..." - mit Verweis auf die oben markierte Zeile, in der ja gar keine Variable verwendet wird...

Das Skript (inkl. Sub) funktioniert ansonsten korrekt - tut also auch wirklich das, was es soll. Ich würde aber natürlich trotzdem gerne wissen, wo mein (Denk-)Fehler liegt.


Danke und viele Grüße,
deko
renee
 2007-01-30 14:10
#73833 #73833
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Mach aus:
Code: (dl )
1
2
   for ($i; $i < keys(%sub_menu); $i++)
{


das hier:
Code: (dl )
1
2
   for (; $i < keys(%sub_menu); $i++)
{


Der erste Teil des Schleifenkopfs ist normalerweise eine Zuweisung. Wenn Du keine Zuweisung machen willst, dann lass es weg...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 2 Einträge, 1 Seite



View all threads created 2007-01-30 14:01.