Sascha: Variablen - Unterschiede

Beitrag lesen

Hallo,

my $c1 = {};

Anonyme Hash-Referenz.

aber
   $c1 = {};
ist doch das Gleiche wie
   $c1;

denn in beiden Fällen funktioniert

$c1->{Begruessung} = "Hallo Anonymous!";
   print "$c1->{Begruessung}\n";

und warum funktioniert

print "$c1{Begruessung}\n";

nicht?

my $c2 = '';

Leerer String.

Ok, leutet mir ein!

my $c3 = ();

Undefinierter Wert (du expandierst durch diese Zuweisung eine leere Liste zu einem String, das gibt undef).

aber dies ist doch auch wieder das Gleiche wie
   $c3;
denn der Skalar ist zunächst undefiniert. Warum setzt man dann $c3=(); ?

Gruß,
Sascha