As the title states, I'm having problems deleting a dynamic character array. I run the program and it runs fine until I delete the character array that holds the player's name.
It gives me an error like this.
Here is all the code that I believe to be related to the errorCode:Debug Assertion Failed! <directory to dbgdel.cpp> line 52 Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse)
Code://in file Main.cpp int main() { CGame* Game = new CGame; Game->CreatePlayer(); delete Game; Game = NULL; return 0; }Code://in file Game.cpp CGame::~_CGame(void) { CGame::CleanUp(); } void CGame::CreatePlayer(void) { char name[50]; cout << "What is your name?\n"; cout << ">"; cin.getline(name, 50); m_Player->SetName(name); cout << "Your name is " << m_Player->GetName() << ".\n"; cin.get(); } void CGame::CleanUp(void) { delete m_Player; m_Player = NULL; }Code://in file Player.cpp CPlayer::_CPlayer(void) { m_Name = new char[50]; } CPlayer::~_CPlayer(void) { CPlayer::CleanUp(); } char* CPlayer::GetName(void) { return m_Name; } void CPlayer::SetName(char* name) { m_Name = name; } void CPlayer::CleanUp(void) { delete[] m_Name; m_Name = NULL; }



LinkBack URL
About LinkBacks



