Sie verwenden our
, um eine Variable als global zu deklarieren. Sie können dann von anderen Stellen im selben Paket darauf zugreifen, wenn sie es auch als eine our
Variable in ihrem lexikalischen Geltungsbereich deklarieren. Außerhalb des Pakets können Sie nur mit einem Paket :: Präfix darauf zugreifen.
Beispiel:
package Foo;
use strict;
use warnings;
sub new {
our $bar = $_[1];
return bless {}, $_[0];
}
sub get_bar {
our $bar;
return $bar;
}
1;
In einer anderen Datei:
use strict;
use warnings;
use Foo;
my $foo = Foo->new('baz');
print "This is baz: ", $foo->get_bar, "\n";
print "So is this: ", $Foo::bar, "\n";