Mentre stavo sperimentando, ho scoperto che
print ${\string}
sarebbe stampare
string
sullo schermo.
È normale? Questo ha un nome?
Mentre stavo sperimentando, ho scoperto che
print ${\string}
string
sullo schermo.
La parola "stringa" viene interpretata come una stringa che semplicemente non ha citato. use strict
vieterebbe questo, e use warnings
si sarebbe lamentato.
Si sta quindi prendendo un riferimento alla stringa (efficacemente, my $ref = \"string";
) e alla relativa definizione (efficacemente, ${$ref}
).
È "normale" nel senso che la vita senza strict
è talvolta scivolosa e tagliente.
E 'un riferimento alla stringa di essere dereferenziato con ${}
perl -MO=Deparse -e "print ${\string}"
print ${\'string';};
Anche provare 'sottostringa {return 'foo'}; stampa $ {\ string} 'che fornisce una risoluzione diversa per bareword –