Struppi: Code referenzieren

Beitrag lesen

"Gehen" tut natürlich beides, es ist nur etwas völlig unterschiedliches.

danke auch Dir, ja ist klar jetzt, was passiert. Also ich nehme dann doch die Referenz ;-)

Es ist so, dass ich nicht gerne eine print-Liste unterbreche, daher geben meine Funktionen nicht selbst was aus, sondern haben einen Rückgabewert, der in die print-Anweisungs-Liste eingebaut wird. Das Array in meinem Menu-Hash soll natürlich klein bleiben, klar da muss ne Referenz rein:

Irgendwie klingt das für mich, als ob du immer noch nicht den Unterschied der beiden Varianten in deinem ersten Posting verstanden hast. Das erste ist keine Referenz und hat auch nichts damit zu tun.

Statt:

my %menu = (  
    1 => ['Html', 'Inhalte erstellen und bearbeiten', &html],  
    2 => ['Html', 'Inhalte erstellen und bearbeiten', \&html],  
);

könntest du folgendes schreiben (und solltest auch, da das kaufmännische-Und als Funktionssigil nur verwendet werden sollte, wenn du die Parameter weitereichen oder die prototyp Deklaration überschreiben willst)

my %menu = (  
    1 => ['Html', 'Inhalte erstellen und bearbeiten', html()],  
    2 => ['Html', 'Inhalte erstellen und bearbeiten', \&html],  
);

Ich hoffe jetzt ist es klarer.

Struktur für Menu und Eingangsseite

my %menu = (
    1 => ['HTML', 'HTML-Inhalte erstellen und bearbeiten, CSS-Dateien, Titel, Ordner und andere Attribute den Inhalten zuweisen.', &htmlmanager],
    2 => ['CSS','Dateien für Cascading Stylesheets erstellen und bearbeiten.', &cssmanager],
);
[...]

  
Wobei ich mich frage warum du einen Hash mit Zahlen als keys benutzt, ein Array ist schneller.  
  
Struppi.