题
是什么在Perl %INC
和@INC
之间的差异?
解决方案
在 @INC 数组保存的所有文件系统的路径,其中的Perl将寻找基于使用或需要它们的模块。
使用后或需要时,%INC 散列将包含加载的模块和在那里他们被从加载。
从我的笔记本电脑的例子:
@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',
'.'
和%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包含数据::自卸车因为我用它来快速转储这两个值)。
其他提示
请参阅的perldoc perlvar 获得@INC
,%INC
和Perl中的所有其它的特殊变量
不隶属于 StackOverflow