[quote=cbxk1xg,23.06.2005, 11:13]In diesem Fall wäre das manchmal hinderlich, da ich einige globale Variablen brauche.[/quote]
auch in perl gibt es sowas aehnliches wie globale variablen...
use strict; use warnings;
use vars qw($Global1);
our $Global2 = 400; # ab perl5.6
...
und wenn du globale Variablen nur brauchst, um dir in einer Subroutine einen status oder so zu merken, dann helfen oft auch closures
{ # block
my $counter = 0;
sub IncreaseCounter { return ++$counter }
sub DecreaseCounter { return --$counter }
sub ResetCounter { $counter = 0 }
} # block
hier ist $counter nur im block gueltig, die Subroutinen sind aber global und somit auch von aussen erreichbar... da muss man nur aufpassen, dass my $counter=0 ausgefuehrt wird, bevor das erste mal auf $counter zugegriffen wird (ok, bei diesem beispiel ist es egal, weil ++ undef ohne warnung 1 ergibt...