2d生物クラス ポインターの配列を作成します。
try{
world = new Organism**[worldSizeX];
for (int x = 0; x < worldSizeX; x++){
world[x] = new Organism*[worldSizeY];
// INITATES world ARRAY
for (int y = 0; y < worldSizeY; y++){
world[x][y] = new Organism;
}
// !INITATES world ARRAY
}
}
catch (std::bad_alloc){
std::cout << "Not enough memory for World size" << worldSizeX << "x" << worldSizeY << std::endl;
deleteWorld(); // DO I NEED THIS?
init((int)worldSizeX/2, (int)worldSizeY/2, ants, beetles);
return;
}
私が持っている場合はbad_alloc、より小さな int 値で init を呼び出したいと思います。アレイをdelete失敗させる必要がありますか、それとも単に実行できますか? はいの場合、それを削除するにはどうすればよいですか。アレイアプリケーション全体をループすることはできません。クラッシュするだけです。