File::Modified的文档说:
File::Modified
my $d = File::Modified->new(files=>['Import.cfg','Export.cfg']);
files参数在我看来是一个数组。为什么不能直接交阵?
files
my $d = File::Modified->new(files=>@array);
这将创建一个运行时错误。
efzxgjgh1#
files参数不是数组;它是对数组的 * 引用 *。The File::Modified POD说道:Files,它接受一个数组引用,指向要监视的文件名。这就是为什么你不能简单地传递一个数组变量。方括号创建对数组的引用,它不同于数组。如perlref文档所示,引用数组的一种方法是使用反斜杠:
Files
perlref
my $d = File::Modified->new(files => \@array);
1条答案
按热度按时间efzxgjgh1#
files
参数不是数组;它是对数组的 * 引用 *。The File::Modified POD说道:
Files
,它接受一个数组引用,指向要监视的文件名。这就是为什么你不能简单地传递一个数组变量。
方括号创建对数组的引用,它不同于数组。
如
perlref
文档所示,引用数组的一种方法是使用反斜杠: