# nur dem Verständnis halber der Konstruktor: sub new { # @liste = ([1,2,3],[4,5,6] u.s.w. ) my $self = { 'zeiger' => 0, 'maxspalte' => $#{$liste[0]}, 'maxzeile' => $#liste, 'daten' => \@liste }; bless($self, $classname); } sub sort { my $self = shift; my $spalte; unless (@_){$spalte = $self->{maxspalte}-2} # hier unwichtig else {$spalte = shift} # hier unwichtig my $unsortiertref = $self->{daten}; my @unsortiert = @$unsortiertref; no warnings 'numeric'; my @sortiert = sort { $a->[$spalte] <=> $b->[$spalte] || $a->[$spalte] cmp $b->[$spalte] } @unsortiert; $self->{daten} = \@sortiert; }