我正在将一些参数传递给一个函数,其中一个可能是未定义的。
$a = ($config->function(param('a'),'int'));
我的模块包含一个如下所示的函数:
sub function{
my $self = $_[0];
my $t = $_[1];
my $type = $_[2];
print "$self,$t,$type<br/>";
}
我试过用shift
而不是@_
语法,但没有改变。问题是如果$config->function
用未定义的方式调用param('a')
它,它会打印如下:
MY_FUNC=HASH(0x206e9e0),name,
似乎$t
被设置为$type
应该是的值undef
并且被完全忽略。