【问题标题】:Multiple assign to previously defined variables in Perl多重赋值给 Perl 中先前定义的变量
【发布时间】:2022-06-14 15:32:59
【问题描述】:

如何为 Perl 中先前声明的变量分配返回值?有没有办法做这样的事情:

use strict;
use warnings;
my ($a, $b, $c) = first_assign();
 # let's say $a = "a", $b = "b", $c = "c"

($a, $b, $c) = second_assign();

# let's say we expect them to be "aa", "bb" and "cc" correspondingly

在这种情况下,所有这些变量都将等于''。那么,是否有一些特殊的方法可以一次分配给许多先前声明的?

【问题讨论】:

    标签: perl multiple-assignment


    【解决方案1】:

    只需从您的分配方法中返回一个元组:

    use strict;
    use warnings;
    
    my ($a, $b, $c) = first_assign();
    print "a = $a, b = $b, c = $c\n";
    
    ($a, $b, $c) = second_assign();
    print "a = $a, b = $b, c = $c\n";
    
    sub first_assign {
      return ('a', 'b', 'c');
    }
    
    sub second_assign {
      return ('aa', 'bb', 'cc');
    }
    

    这会产生以下输出:

    a = a, b = b, c = c
    a = aa, b = bb, c = cc
    

    【讨论】:

    • 这很简单...非常感谢!
    猜你喜欢
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多