Ich kann nicht entscheiden, welcher Ansatz ist mehr (1) idiomatische Perl, (2) effizient, oder (3) "klar".Was ist besser in Perl: ein Array von Hash-Referenzen oder eine Liste von "flachen" Hashes?
Lassen Sie mich durch Code erklären. Erstens kann ich
sub something {
...
$ref->{size} = 10;
$ref->{name} = "Foo";
$ref->{volume} = 100;
push (@references, $ref);
...
return @references;
}
oder, was ich tun kann
sub something {
...
push (@names, "Foo");
$sizes{Foo} = 10;
$volumes{Foo} = 100;
...
return (\@names, \%sizes, \%volumes);
}
Beide tun im Wesentlichen das Gleiche. Wichtig ist, dass ich das Array brauche, weil ich die Reihenfolge einhalten muss.
Ich weiß, es gibt immer mehr als eine Möglichkeit, etwas zu tun, aber dennoch, welche dieser beiden würden Sie bevorzugen?
Können Sie Ihre Aufgaben vertikal ausrichten und auffüllen? Und entfernen Sie die Klammer bei Ihrer Rückkehr und drücken Sie?Das würde das OP viel klarer machen. –