Hier ist der Code, um das Problem zu reproduzieren:
sub hallo { return (h => 1, n => 1); }
print join ", ", Werte hallo();
Ich bekomme den Fehler:
Typ des Args 1 für Werte muss Hash sein (nicht Eintrag der Unterfunktion) bei - Zeile 4, in der Nähe von ");" Ausführung von - abgebrochen aufgrund von Kompilierungsfehlern.
Ich weiß, dass ich den Aufruf und den print auf zwei Zeilen aufteilen kann:
sub hallo { return (h => 1, n => 1); }
my %hash = hallo();
print join ", ", Werte %hash;
Aber ich möchte das nicht tun. Gibt es einen Weg, dies in einer Zeile zu tun, so dass ich nicht die ganze Zeit temporäre Variablen erstellen muss?