2

3番目はなぜprint失敗するのですか?

my @a = (0,1,2,3); 
print @a[-@a..-2];  # works
print @a[0..2];     # works
print @a[0..-2];    # prints nothing 

このステートメントで-@a使用されているの意味がわかりません。@a[-@a..-2]これは特別な構文ですか?たとえば、この特別な構文は (あるとすれば) 何を提供$#aしますか? サブインデックスで使用される配列の記号が「その配列の長さ」を意味するのは、ある種の砂糖(1文字だけ短いので興味深い)ですか?

4

2 に答える 2