2

単純な WinForms ゲームで使用するグローバル配列がいくつかあります。新しいゲームが開始されると、配列が初期化されます。プレーヤーがゲームの途中 (配列にデータが格納されている) のときに、StartNewGame() ボタンをクリックします (ゲームを再開します)。次はどうする?

新しいゲーム用に配列全体を再初期化しても問題ありませんか、それともすべての配列項目を null に設定して、既に初期化された配列を使用する必要がありますか (遅くなります)。

というか、こんなことしていいの?

MyClass[,] gameObjects;

public Form1()
{
   StartNewGame();

   // game flow .. simplified here .. normally devided in functions and events.. 

   StartNewGame();

   // other game flow
}

public StartNewGame()
{
   gameObjects = new MyClass[10,10];

   // some work with gameObjects
}
4

4 に答える 4

1

MyClassこれはほぼ完全に、含まれるデータ メンバーの数、そのコンストラクター (およびメンバーのコンストラクター) が必要とする処理の量、およびこのクラスのオブジェクトを「初期化済み」状態に (再) 設定するのが比較的単純な操作であるかどうかに依存します。 . ベンチマークを行うことで、より客観的な答えを得ることができます。

于 2013-05-28T17:31:04.037 に答える