This is the function that causes the problem.
I call the function in this function:Code:Deck::~Deck() { delete this; }
And I call cleanup here:Code:void Card_Game::cleanup() { deck->~Deck(); // delete deck for (unsigned int loop = 0; loop < players.size(); loop++) // delete hands { players[loop].clear_hand(); } players.clear(); //delete players }
Basically the program freezes when I make it go to case 1. Any ideas why I can't do that?Code:int Card_Game::main_menu(int result) { switch(result) { case 1: // play blackjack cleanup(); // cleanup just in case initialize_players(2); deck = new Deck; deck->shuffle_deck(); players[0].draw(*(deck), 1); players[1].draw(*(deck), 1); return 1; case 2: // quit game return 3; default:// invalid entry std::cout << "Please enter 1 or 2.\n"; return 0; } }



LinkBack URL
About LinkBacks





