2017-01-19 12 views

答えて

4

感謝したい例えば、大きいことが、後に配列のサイズを変更するにはどうすればよい

既に存在する形状のアレイである。


このようにするには、位置変数を新しい配列にバインドします。

my @array[5]; 
@array := my @[7]; 

私はスペックテストで宣言した形状配列を切り替えるためのテストがあるとは思わない(でも私はそこにあるべきだと思います)


Aおそらく、より安全な方法を宣言することです形状を持たない配列を直ちに開始形状の配列にバインドします。

my @array := my @[5]; 
@array := my @[7]; 

私はこれがより安全であると言う理由は、が、それは常に宣言した形状を持つことになりますと仮定いくつかの最適化を行う可能性がありますコンパイラです。

@array[*-1] => @array[4] 

@array[6] => Failure.new(…) # (or even a compile-time error) 
+0

私はint x []を行うことができるJavaのバックグラウンドから来ているperl6にはまだ新しいです。私はx = new int [5]とすることができます。私は同じことがここで可能かどうか疑問に思っていた。 – AphroditeVenus

+0

@AphroditeVenus通常の配列を使ってみませんか? Perl(5と6)は、設計の限界のためにJavaを使用する必要があります。 Perl 6が存在する理由は、Perl 5には簡単に回避できない制限があったからです。 –

+0

アレイのサイズを強制しないとコンパイルが速くなりますか?また、制約チェックが必要です。 – AphroditeVenus

関連する問題