数组参数如何使用?

数组参数如何使用?

如何传递数组参数?
我在同一个文件中传递数组参数没有问题,如果把子程序放到另外一个文件中,参数就传不过去了。请各路大侠支招~!~!

test.pl按如下方式写代码,可以正常传递数组参数。
test.pl代码如下:
#!usr/bin/perl
require 'myutils.pl';
my @test = ("hello","world","dlt_test");
my $ttt = "string test\n";

sub test_argument(\@$)
{
     my ($list,$calcar)=@_;
     print "ttt=$calcar\n";
     foreach my $temp (@$list)
    {
        print "list=$temp \n";
     }
}
test_argument(@test,$ttt);

执行结果是:
ttt=string test
list=hello
list=world
list=dlt_test
如果把test_argument函数放到myutils.pl中,执行结果就出错了。
移动之后的myutils.pl代码如下:
#!usr/bin/perl
sub test_argument(\@$)
{
     my ($list,$calcar)=@_;
     print "ttt=$calcar\n";
    foreach my $temp (@$list)
    {
         print "list=$temp \n";
    }
}
1;
运行结果如下:
ttt=world


谁知道是什么原因?代码重用如何实现?
test_argument(\@test,$ttt);
具体的调用代码?


QUOTE:
原帖由 redicaps 于 2008-6-22 16:41 发表
test_argument(\@test,$ttt);

我错了
函数原型(prototype)在跨文件的时候就不适用了



QUOTE:
原帖由 churchmice 于 2008-6-22 18:41 发表

我错了
函数原型(prototype)在跨文件的时候就不适用了

楼上说的对,跨文件了,参数就不适用了,这个是函数的调用问题。。。
楼上的能说具体点嘛?
我也想了解一下,谢谢