Pregunta

Cuál es la diferencia entre %INC y @INC en Perl?

¿Fue útil?

Solución

La matriz @INC contiene todas las rutas del sistema de archivos donde Perl buscará para módulos cuando los usa o los requiere.

Después de usar o requerir, el % INC contendrá los módulos cargados y de donde fueron cargados.

Ejemplos de mi computadora portátil:

@INC:

'/etc/perl',
'/usr/local/lib/perl/5.10.0',
'/usr/local/share/perl/5.10.0',
'/usr/lib/perl5',
'/usr/share/perl5',
'/usr/lib/perl/5.10',
'/usr/share/perl/5.10',
'/usr/local/lib/site_perl',
'.'

y% INC:

'warnings/register.pm' => '/usr/share/perl/5.10/warnings/register.pm',
'bytes.pm' => '/usr/share/perl/5.10/bytes.pm',
'XSLoader.pm' => '/usr/lib/perl/5.10/XSLoader.pm',
'Carp.pm' => '/usr/share/perl/5.10/Carp.pm',
'Exporter.pm' => '/usr/share/perl/5.10/Exporter.pm',
'warnings.pm' => '/usr/share/perl/5.10/warnings.pm',
'overload.pm' => '/usr/share/perl/5.10/overload.pm',
'Data/Dumper.pm' => '/usr/lib/perl/5.10/Data/Dumper.pm'

(% INC contiene Data :: Dumper porque lo usé para volcar rápidamente esos dos valores).

Otros consejos

Ver perldoc perlvar para @INC, %INC y todas las demás variables especiales en Perl.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top