Modules and Packages
Package Variables
our declares a package variable that package subroutines can share.
Package Variables
package_variables.pl
use strict;
use warnings;
package Counter;
our $total = 0;
sub add {
my ($amount) = @_;
$total = $total + $amount;
return $total;
}
package main;
my $amount = ;
my $first = Counter::add($amount);
my $second = Counter::add(2);
print "amount=$amount\n";
print "first=$first\n";
print "second=$second\n";
use strict;
use warnings;
package Counter;
our $total = 0;
sub add {
my ($amount) = @_;
$total = $total + $amount;
return $total;
}
package main;
my $amount = ;
my $first = Counter::add($amount);
my $second = Counter::add(2);
print "amount=$amount\n";
print "first=$first\n";
print "second=$second\n";
use strict;
use warnings;
package Counter;
our $total = 0;
sub add {
my ($amount) = @_;
$total = $total + $amount;
return $total;
}
package main;
my $amount = ;
my $first = Counter::add($amount);
my $second = Counter::add(2);
print "amount=$amount\n";
print "first=$first\n";
print "second=$second\n";
package variable
A package variable belongs to a package namespace and can be referenced with a qualified name.