現在、私はTCube
配列を持っています
CreateCube : array[1..1000] of tcube;
現在それらをマップとして使用しているため、幅が 30 キューブ、高さが 20 キューブで、大きなグリッドが作成されます。しかし、1000 個のキューブでは実際には十分ではありません。10,000 個のキューブがもっと必要です。
このサイズのアレイを使用すると、今後問題が発生しますか? 他のオプションはありますか?
現在、私はTCube
配列を持っています
CreateCube : array[1..1000] of tcube;
現在それらをマップとして使用しているため、幅が 30 キューブ、高さが 20 キューブで、大きなグリッドが作成されます。しかし、1000 個のキューブでは実際には十分ではありません。10,000 個のキューブがもっと必要です。
このサイズのアレイを使用すると、今後問題が発生しますか? 他のオプションはありますか?
大規模な配列で問題が発生する主なシナリオは 2 つあります。
配列は、メモリが許す限り大きくすることができます。ただし、それがローカル変数である場合、または何らかのメソッドに値で渡す場合は、注意してください。簡単にスタックから抜け出すことができます。
適切なデータ構造を選択することは、私がアドバイスできることだけです。その多くは、アレイがどのように取り込まれるかによって異なります。スパース配列は、配列が大きくてもデータが少ない場合にうまく機能する可能性があります。
個人的には、TCube インスタンスを含むようにカスタム リスト クラスをコーディングします。これには、配列よりもいくつかの利点があります。まず、メモリを動的に消費します。次に、アプリケーションに合わせてこのクラスにメソッドを追加できます。