2017-03-24 8 views
0

ユーザーが望む限り、4つの値の行を4次元配列に連続して追加したいと考えています。私は4つの単一次元配列でそれを行うことができますが、各値には独自の配列が割り当てられているため、プログラムが長くなりすぎて見栄えが良くありません。多次元配列のサイズを変更するにはどうすればよいですか?

+0

これは既にあります。このリンクを確認してください(http://stackoverflow.com/questions/6539571/how-to-resize-multidimensional-2d-array-in-c) –

+0

「継続的に追加する」。 'List 'を、必要なだけ多くの次元で調べます。 –

答えて

0

ディメンションの1つが活発に成長する場合は、配列以外のデータ型(少なくともディメンションの場合)を使用する必要があります。

List<ArrayType[][][]>(3次元配列のリスト)を使用することをお勧めします。リストは配列によってバッキングされ、Listはサイズ変更を処理します。一度 '行'を追加したい場合は、Addに電話してください。

+0

私はあなたがリストを使用していることを知っていますが、私の割り当てでは、痛みである配列だけを使用する必要があります。 – HyperPXLZ

+0

次に、行を追加するたびに配列のサイズを変更するか、実際に最後に使用した行を格納するカウンタを追加する必要があります。リサイズの数を減らすために、適切なサイズで配列のサイズを設定できます。 –

+0

どうすればいいですか? Array.Resizeは1次元配列の場合にのみ有効です – HyperPXLZ

0

静的配列を再開することはできませんが、動的メモリ割り当てを使用して、(reallocを使用して)メモリブロックを常に再割り当てすることができます。

関連する問題