micha: Referenzen -- wozu ?

Beitrag lesen

Hi zusammen,

ich bin grad am durchlesen, wie referenzen funktionieren.
Aber ich verstehe noch nicht, wozu Referenzen gut sind ?

Wenn ich mache:
$var = 5;
$ref_var = $var;

Was bringt mir denn jetzt dieses Referenz ? Könnt ihr mir mal bespiele sagen, wann ich eine Referenz brauchen könnte?

cu
Axeman

mit Referenzen kannst du zum Beispiel Variablennamen (für Variablen, Arrays etc) dynamisch erstellen.
Wenn du zB. eine Konfigurationsdatei mit folgendem Format hast:

[datensatz1]
wert1=1
wert2=2
wert3=3
[datensatz2]
wert1=1
wert2=2
wert3=3

kannst du das einlesen mit

...
while (<DATENSATZDATEI>) {
  chomp;
  if (/[(.*)]/) {                # hier werden die Teile zwischen den eckigen Klammern gefunden
   $hashname=$1;                 # und in $hashname gespeichert
   next;
  } else {
   ($key,$value) = split /=/;
   $$hashname{$key} = $value;    # hier werden die Schlüssel-Wert-Paare in dem hash $hashname (also
  }                              # %datensatz1, %datensatz2 ..) gespeichert
}
...

du kannst auch ganze subroutinen on-the-fly erstellen und aufrufen, ohne dass sie im sourcecode erscheinen und vieles mehr.

Referenzen sind schon eine tolle Sache

Ciao
Micha