在Perl中检索特定的返回值

Ste*_* Lu 0 perl

我正在寻找一个单行程,让我从子程序中获取第二个返回值.

而不是这个:

($a,$b)=function;
print $b
Run Code Online (Sandbox Code Playgroud)

应该可以做这样的事情

print ??? function
Run Code Online (Sandbox Code Playgroud)

Ted*_*opp 6

这有效:

sub test { return (1,2) }
print ((test)[1]);  # Returns 2
Run Code Online (Sandbox Code Playgroud)

这也有效:

print +(func())[1], "\n";
Run Code Online (Sandbox Code Playgroud)

  • `print((function)[1])`或`print +(function)[1]`以获得优先权.请参见http://stackoverflow.com/questions/5055519/. (3认同)