#! /usr/bin/perl package ERRORCODEOBJ; use strict; use warnings; # bitte immer zusammen mit dem Klassennamen Blessen # das ist sauberer sub new { my $class=shift; my $zeiger=[ ]; bless($zeiger,$class); } sub errormap { #use Data::Dumper; #print Dumper(\@_); my $self = shift; #$$line[0]=$_[0]; # hier kannst du auch my $line=shift; # schreiben anstatt # my ($line) = @_; open( my $errormaplist, '<', 'errormap.txt' ) or die "Fehler: $!"; my @lines = <$errormaplist>; close $errormaplist; # warum so enorm kmpliziert?! ##print $lines[ $linenr ]; ##my $ausgabe = $$lines[$$line[0]]; #my $ausgabe = \@lines; #print "ausgabe: ".$$ausgabe[$line]; #my $wert = $$ausgabe[$line]; #return $wert; # das ist doch viel einfacher return $lines[$line]; } # bitte wieder in das paket "main" wechseln package main; my $obj=ERRORCODEOBJ->new(); # wenn du schon die funktion aufrufst, # so kannst den Rückgabewert doch auch gleich Ausgeben print "Error:".$obj->errormap(2)."\n";