Thread Bei Abfrage des Rückgabewerts aus einer Subroutine gibts Fehler... (23 answers)
Opened by Brenner at 2009-01-22 12:26

Brenner
 2009-01-22 12:26
#118231 #118231
User since
2009-01-13
87 Artikel
BenutzerIn
[default_avatar]
teil Subroutine:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
sub logfilename {
        my $self = shift;
                
        my $logfilename;
        
        if ($self->[1]) {
                $logfilename = $self->[1]; }
        else {
                $logfilename = "DEFAULT_logfile_name";  }
                                
        return $logfilename;
}



aufruf im hauptprogramm:

Code (perl): (dl )
1
2
my $log2 = <Modulpfad>->logfilename();
print "Zurueckgegebener Wert von der subroutine: ".$log2;



Die Subroutine macht soweit alles vernünftig und der Returnwert ist auch der den ich haben will. Wenn ich den Wert aber so im Hauptprogramm versuche wieder rauszufischen bekomme ich folgende Meldung.

Code: (dl )
1
2
3
Z:\test> perl test_log.pl
Can't use string ("<Modulpfad>") as an ARRAY ref while "strict refs" in u
se at Z:/test/log.pm line 99.


Line 99 ist

if ($self->[1]) {

in der Subroutine.

View full thread Bei Abfrage des Rückgabewerts aus einer Subroutine gibts Fehler...