#!/usr/bin/perl use strict; use warnings; my %test1 = ( foo => 'bar', foo1 => 'bar1', foo2 => 'bar2', ); arbeite(\%test1); sub arbeite { my ($ref) = @_; my %test2 = ( foo => 'bar2', foo1 => 'bar12', foo2 => 'bar22', ); print "iteriere über beide flexibel:\n"; my @referenz = (\%test2); push @referenz,$ref if defined $ref && $ref ne ''; foreach my $r (@referenz) { foreach my $k (keys %$r) { print "$k = '$r->{$k}'\n"; } } }