Sé que pasar un escalar a un sub está realmente pasando la referencia, pero como yo soy nuevo en perl Todavía hice la siguiente prueba:pasando una referencia escalar en Perl
#!/usr/bin/perl
$i = 2;
subr(\$i);
sub subr{
print $_[0]."\n";
print $$_[0]."\n";
}
pensé la primera línea va a imprimir una dirección y la segunda línea va a devolver el número, pero la segunda es una línea en blanco. Fui señalado por alguien más para hacer esto: ${$_[0]}
e imprime el número. Pero no sabía la razón por la que sin {} no funciona y por qué funciona con {}. Entonces, ¿qué ha sucedido?
Esto es genial, gracias – user685275