sub Thing {
my $self = shift;
if ($self->{validationTest} != 1) {return;}
my $data = 'Hello, World!';
return $data;
}
如果IF条件为真且子数字提前返回,$ data会发生什么?
答案 0 :(得分:4)
[你问变量的初始化何时发生,但我认为你在谈论将字符串Hello, World!
赋值给$data
。我正在回答这个问题。]
在评估赋值时会发生赋值,如果子函数在到达赋值之前返回,则永远不会发生。
答案 1 :(得分:-2)
当if
条件为真时,Thing()
会返回undef
。甚至没有创建变量$data
。