Advertisement

perl wantarray() function

阅读量:

用法

wantarray

说明

依据函数所接收的赋值类型(即为列表或标量),其返回结果将呈现差异性。

  • 若未对定义函数的返回值进行任何赋值操作,则wantarray将返回undef;
  • 若将函数的返回值赋予一个标量变量,此时wantarray将返回空字符串(需注意,空字符串与undef存在本质区别);
  • 若将函数的返回值赋予一个列表结构,那么wantarray将返回数值1;

例子

实际上,文字描述存在一定的不便之处,若直接观察该命令的名称wantarray,其字面意思似乎是在询问“想要?想要列表”,这样的表述略显晦涩,因此直接通过实例进行说明会更为直观。

复制代码
    #!perl 
    
    # 定义函数
    sub wantarray_example{
    # defined wantarray 判断函数的返回值是否进行赋值了
    if(defined wantarray){
        print "assignment!\n";
    }else{
        print "no assignment!\n";
    }
    
    # wantarray 判断函数的返回值赋值给变量的类型,如果是列表,则返回1,否则返回undef
    if(wanta

全部评论 (0)

还没有任何评论哟~