gpt4 book ai didi

arrays - 如何在 perl 中用现有数组声明数组?

转载 作者:行者123 更新时间:2023-12-01 09:33:19 24 4
gpt4 key购买 nike

假设我创建了一组这样的数组:

my (@device, @mount, @type, @options, @dump, @pass) = ();

后来我想创建一个包含这些数组的数组。我该怎么做?我尝试使用:

my @columns = (@device, @mount, @type, @options, @dump, @pass);

my @columns = ([@device], [@mount], [@type], [@options], [@dump], [@pass]);

问题似乎是@columns 仍然为空。我觉得我犯了一个非常简单的语法错误。我做错了什么?

最佳答案

  1. 使用时,只需将给定数组中的所有值赋值给数组@columns

    my @columns = (@device, @mount, @type, @options, @dump, @pass);
  2. 这里,如果你使用Data::Dumper,你只是说所有的数组引用。你可以看到你的数组 @columns 的结构。

    use Data::Dumper;

    my @columns = ([@device], [@mount], [@type], [@options], [@dump], [@pass]);
    print Dumper(\@columns);

您可以使用数组引用来做到这一点。阅读本教程:perlreftut - Mark's very short tutorial about references

my @columns = (\@device, \@mount, \@type, \@options, \@dump, \@pass);

然后使用解引用:

my @new_device = @{ $columns[0] };

关于arrays - 如何在 perl 中用现有数组声明数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12547449/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com