linux-l: perl-hashs mit dynamischen Variablen

Stefan Bund sbund at artec-berlin.com
Fr Feb 9 12:15:36 CET 2001


Jens Dreger <jens.dreger at physik.fu-berlin.de> writes:
> Was genau sprach doch gleich gegen:
> 
>   foreach (keys %hash) {
>       ref($hash{$_}) ? @$_ = @{$hash{$_}} : $$_ = $hash{$_};
>   }
> 
> Will sagen: man braucht kein 'eval'...

Ich habs jetzt nicht ausprobiert, aber das funktioniert doch wohl
nicht unter 'use strict', oder? Ich würde die symbol-table verwenden:

foreach (keys %hash) {
    ref($hash{$_}) ? @{$::{$_}} = @{$hash{$_}} : ${$::{$_}} = $hash{$_};
}

(Das habe ich halb getestet). Das funktioniert dann auch unter perl -w
-Mstrict ...

Stefan. (Der (fast) IMMER perl -w und strict verwendet)



Mehr Informationen über die Mailingliste linux-l