Thread @ in Variablen (32 answers)
Opened by Knowbody at 2009-11-03 15:53

pq
 2009-11-03 16:21
#127723 #127723
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
2009-11-03T15:11:25 bianca
Dennoch expandiert ein nicht definiertes @otton nicht zu einem Leerstring sondern zu undef.

das ist blanker unsinn.
$string = "blubb @foo";
so soll da bitte undef rauskommen??
ein nicht definiertes array ist einfach leer, und ein leeres array interpoliert ergibt natürlich den leeren string. nur wenn das array ein element enthalten würde, das undef ist, gabe es ein undef im string, was zu "" würde und gleichzeitig eine warnung ausgeben würde.
ein interpoliertes array ist doch nichts anderes als join $", @array. was eben zum leerstring wird, wenn @array leer ist.
bitte probier vorher aus, bevor du sowas behauptest!
Quote
Aber wenn hier ein Lernender schon fragt, sollte er es auch richtig beigebracht bekommen, finde ich.

ja deswegen versuche ich euch beiden das mit dem undef auch schnell wieder aus dem kopf zu kriegen.
glashaus, steine...
vorher testen!
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread @ in Variablen