Während ich experimentierte, fand ich heraus, dass
print ${\string}
string
auf dem Bildschirm drucken.
Ist das normal? Hat das einen Namen?
Während ich experimentierte, fand ich heraus, dass
print ${\string}
string
auf dem Bildschirm drucken.
Das bareword "string" wird als String verstanden, den Sie einfach nicht angegeben haben. use strict
würde dies verbieten, und use warnings
hätte sich darüber beschwert.
Sie nehmen dann einen Verweis auf die Zeichenfolge (effektiv, my $ref = \"string";
) und Dereferenzierung (effektiv, ${$ref}
).
Es ist "normal" in dem Sinne, dass das Leben ohne strict
manchmal sowohl rutschig und scharfkantig ist.
Es einen Verweis auf Zeichenfolge ist wird mit ${}
perl -MO=Deparse -e "print ${\string}"
print ${\'string';};
auch versuchen 'Sub-String {return 'foo'} dereferenziert; print $ {\ string} ', das dem Bareword eine andere Auflösung bietet –