use strict;
use warnings;
use vars( @list0, @list1, @list2 );
sub DoSomething()
{
my( @localList0, @localList1, @localList2);
#do something here
my( @tempList ) = ( \@localList0, \@localList1,
\@localList2 );
return @tempList;
}
#main program
my @tempList = DoSomething();
push @list0, @$tempList[0];
push @list1, @$tempList[1];
push @list2, @$tempList[2];
####
use strict;
use warnings;
use vars( @list0, @list1, @list2 );
sub DoSomething( \@ \@ \@ )
{
my( $listRef0, $listRef1, $listRef2) = @_;
#do something here
push @$listRef0, somelist;
push @$listRef1, somelist;
push @$listRef2, somelist;
}
#main program
DoSomething( \list0, \list1, \list2 );
####
use strict;
use warnings;
use vars( @list0, @list1, @list2 );
sub DoSomething()
{
#do something here
push @list0, somelist;
push @list1, somelist;
push @list2, somelist;
}
#main program
DoSomething();