- 832 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 13:06:08 ]
- >>829
splice の二番目の引数は「読み飛ばす要素数」ではなく「開始対象となる要素の添え字」なので、 開始位置の @array は「要素数」ではなくて「最大の添え字よりも1つだけ大きい数」の意味。 昔は splice(@array,$#array+1,0,$item) で載っていた。 今は splice(@array,@array,0,$item) だけど、これは scalar @array がたまたま $#array+1 と等しい 場合に限ってうまく動く。 もちろん、何も特別なことをしなければ scalar @array と $#array+1 は等しいので、通常はうまく動く。
|

|