これが配列参照で範囲を使用する方法であることを発見しました:
@$aref[2..$#$aref]
したがって、これらすべての異なる perl 環境に (テストするために) アクセスすることはできませんが、最終的にすべての環境でコンパイルされるコードがコンパイルに失敗すると、問題が発生します。
Perl バージョン: 5.16.2
、5.10.1
、および5.8.8
誰か知ってる?
巧妙にならなければ、perl 構文の複雑さをグーグルで検索することは物理的に不可能です。私はこれを行うほど賢くありません。
PS ご存知でしたか?@$arr_ref[-3..$#$arr_ref]
最後の 3 つの要素を取得すると、配列全体が追加されます。明らかにそれが[-3..5]
意味することです: 要素-3
(= 3) をに与えてから、を通して5
追加します。0
5
これは、両方の範囲インデックスが同じ符号でない限り、perl が適切な方法でそれを処理しないためです: 最後から最後までの 5 番目を含むスライスを取得するには、単に を使用します@arr[-5..-1]
。