Array Ref?
am 05.07.2006 10:24:31 von Reinhard Pagitsch
Hallo,
Zur Zeit stehe ich auf der Leitung.
Einer Funktion übergebe ich folgendes:
func( {-file=>$file, -ignore=>"=*", -keywords=>\@MyArray });
Wie muß ich nun in der Funktion func() die -keywords dereferenzieren?
sub func
{
my $options = shift;
my $file=$options->{-file};
my $ignore = $options->{-ignore};
my @arr = $options->{-keywords}; # hier komm ich nicht weiter.
}
Danke,
Reinhard
Re: Array Ref?
am 05.07.2006 10:34:37 von Daniel Fischer
Reinhard Pagitsch!
> func( {-file=>$file, -ignore=>"=*", -keywords=>\@MyArray });
>
> Wie muß ich nun in der Funktion func() die -keywords dereferenzieren?
> [...]
> my @arr = $options->{-keywords}; # hier komm ich nicht weiter.
Wenn MyArray sowas wie (1,2,3) ist:
my @arr = @{$options->{-keywords}};
Gruß
Daniel
Re: Array Ref?
am 05.07.2006 10:54:00 von Reinhard Pagitsch
Hallo Daniel,
Daniel Fischer wrote:
> Reinhard Pagitsch!
>
>> func( {-file=>$file, -ignore=>"=*", -keywords=>\@MyArray });
>>
>> Wie muß ich nun in der Funktion func() die -keywords dereferenzieren?
>> [...]
>> my @arr = $options->{-keywords}; # hier komm ich nicht weiter.
>
> Wenn MyArray sowas wie (1,2,3) ist:
>
> my @arr = @{$options->{-keywords}};
>
Argh.... Wenn ich anstatt \@MyArray \@MArray übergebe kann es ja nicht
klappen. Mann manchmal sieht man vor lauter Bäumen den Wald nicht.
regards,
Reinhard
--
Re: Array Ref?
am 05.07.2006 11:24:45 von Robert Sedlacek
Reinhard Pagitsch wrote
>
> Argh.... Wenn ich anstatt \@MyArray \@MArray übergebe kann es ja nicht
> klappen. Mann manchmal sieht man vor lauter Bäumen den Wald nicht.
Kein "use strict"? Das haette das abgefangen.
hth, p
--
Ordinary morality is only for ordinary people.
-- Aleister Crowley
Re: Array Ref?
am 05.07.2006 12:04:15 von Frank Seitz
Reinhard Pagitsch wrote:
>>>func( {-file=>$file, -ignore=>"=*", -keywords=>\@MyArray });
>>>
>>>Wie muß ich nun in der Funktion func() die -keywords dereferenzieren?
>>>[...]
>>> my @arr = $options->{-keywords}; # hier komm ich nicht weiter.
>>
>>Wenn MyArray sowas wie (1,2,3) ist:
>>
>> my @arr = @{$options->{-keywords}};
>
> Argh.... Wenn ich anstatt \@MyArray \@MArray übergebe kann es ja nicht
> klappen.
Hä? Dein Code funktioniert auch dann nicht, wenn Du die richtige
Referenz übergibst - was immer Deine Variablen sein mögen.
Grüße
Frank
--
Dipl.-Inform. Frank Seitz; http://www.fseitz.de/
Anwendungen für Ihr Internet und Intranet
Tel: 04103/180301; Fax: -02; Industriestr. 31, 22880 Wedel
Re: Array Ref?
am 05.07.2006 13:51:23 von Reinhard Pagitsch
Robert Sedlacek wrote:
> Reinhard Pagitsch wrote
>>
>> Argh.... Wenn ich anstatt \@MyArray \@MArray übergebe kann es ja nicht
>> klappen. Mann manchmal sieht man vor lauter Bäumen den Wald nicht.
>
> Kein "use strict"? Das haette das abgefangen.
Nein, das hatte ich (leider) nicht im Script. Hatte ich in der Eile
_vergessen_.
regards,
Reinhard
--
Re: Array Ref?
am 06.07.2006 08:25:03 von Reinhard Pagitsch
Frank Seitz wrote:
> Reinhard Pagitsch wrote:
>
>>>>func( {-file=>$file, -ignore=>"=*", -keywords=>\@MyArray });
>>>>
>>>>Wie muß ich nun in der Funktion func() die -keywords dereferenzieren?
>>>>[...]
>>>> my @arr = $options->{-keywords}; # hier komm ich nicht weiter.
>>>
>>>Wenn MyArray sowas wie (1,2,3) ist:
>>>
>>> my @arr = @{$options->{-keywords}};
>>
>> Argh.... Wenn ich anstatt \@MyArray \@MArray übergebe kann es ja nicht
>> klappen.
>
> Hä? Dein Code funktioniert auch dann nicht, wenn Du die richtige
> Referenz übergibst - was immer Deine Variablen sein mögen.
Ich hatte es auch mit my @arr = @{$options->{-keywords}}; versucht. Na
ich sollte wohl ein error-handling einbauen.
Grüße,
Reinhard
--