【发布时间】:2022-11-02 07:12:16
【问题描述】:
我正在尝试“推送”到一个匿名的 3 元素数组,其引用存储在哈希中:
my %messages;
my $to = "To";
... later ...
$messages{$msg_id}{$to} = [ [], [], [] ];
这基本上可以工作,因为 Data::Dumper 显示了一个空的 3 元素数组。 我的问题是我不知道如何将数据“推送”到这个匿名数组上!
我尝试了很多事情,但意识到我只是在挣扎。我的许多失败的几个例子!
my word = "something";
push(@{ $messages{$msg_id}{$to} }->[0], ( $word ));
Can't use an array as a reference at ./hash_array.pl line 53.
my @array = ( word1, word2, word3 );
push(\@{ $messages{$msg_id}{$to} }, ( @array ));
Experimental push on scalar is now forbidden at ./hash_array.pl line 54, near "))"
【问题讨论】:
-
请注意,在推送到它之前,您不需要“创建”一个空数组。 Perl 的自动生成功能会为您完成。
标签: perl