このコードを見てください。何時間もの試行錯誤の後。私は最終的に解決策を得ました。しかし、それが機能する理由がわかりません。正直に言うと、Perl はここでループに陥っています。
use Data::Diff 'Diff';
use Data::Dumper;
my $out = Diff(\@comparr,\@grabarr);
my @uniq_a;
@temp = ();
my $x = @$out{uniq_a};
foreach my $y (@$x) {
@temp = ();
foreach my $z (@$y) {
push(@temp, $z);
}
push(@uniq_a, [$temp[0], $temp[1], $temp[2], $temp[3]]);
}
$out 配列の要素にアクセスできる唯一の方法は、for ループを使用して配列としてキャストされたスカラーにハッシュ キーを渡すことであるのはなぜですか? my $x = @$out{uniq_a};
私は完全に混乱しています。ここで何が起こっているのかを説明できる人には本当に感謝しているので、将来のために知っておきます. 前もって感謝します。