返回问题

sid*_*com 1 perl return-value

sub routine1 { 
    return wantarray ? () : undef;
}

sub routine2 { 
    return;
}
Run Code Online (Sandbox Code Playgroud)

这两个子程序有什么区别吗?

Eug*_*ash 5

没有.

perldoc -f返回:

如果没有给出EXPR,则在列表上下文中返回空列表,在标量上下文中返回未定义的值,并且(当然)在void上下文中根本不返回任何内容.