Thread string xy as a HASH ref while "strict refs" in use Problem (2 answers)
Opened by string_von_hash at 2010-11-16 17:33

Gast string_von_hash
 2010-11-16 17:33
#142789 #142789
Hallo, ich probiere etwas mit Datenstrukturen herum.

Folgendes Problem:
Ich will eine Liste von zwei verschiedenen Hashes. Jeder Hash hat verschiedene Elemente ('key') die jeweils strings enthalten ('value'), und letztlich moechte ich in der Lage sein, alle Elemente ('keys') eines der Hashes in der globalen Liste aufzulisten, als auch einen gezielten string fuer ein Element in einem Hash in der globalen Liste anzuzeigen.
D.h. ich versuche das mit einer "Liste an Hashes von Elementen"

Beispiel:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/perl
use strict;
use warnings;
my %azul = (
    FOO => "azul foos secret",
    FII => "azul fiis secret",
    FAA => "azul faas secret"
);
my %verde = (
    FOO => "verde foos secret",
    BOO => "verde boos secret"
);
my @monstros = ( %verde, %azul );
print "monstros[0]{FOO}:\n\'" . $monstros[0]{FOO} . "\'\n\n";


Das referenzieren einzelner Elemente funktioniert bei mir nicht. Hier bekomme ich folgende Ausgabe:
Quote
Can't use string ("FOO") as a HASH ref while "strict refs" in use at ./arrayofhashes.pl line 14.

Nun habe ich auch schon folgendes versucht, bezweifle aber, dass das die Loesung ist - es funktioniert auch nicht.
Code (perl): (dl )
no strict "refs"


Was mache ich falsch?
Last edited: 2010-11-16 17:47:08 +0100 (CET)

View full thread string xy as a HASH ref while "strict refs" in use Problem