Когда я объявляю новый атрибут члена в моем классе game.cpp
следующим образом:
int test;
У меня ошибка разрушения стека , что очень странно, потому что без нового атрибута моя программа работает нормально .
Я знаю, что моя проблема, вероятно, где-то еще в моей программе, и я не буду копировать всю мою программу, но некоторая помощь о том, как сделать сообщение более явным , и, возможно, некоторые советы по отладке разбивки стека были бы хорошими.
Это мой game.cpp
класс на всякий случай. Извините, если мне не хватает чего-то важного, я новичок в C ++. Спасибо
Моя ошибка:
* обнаружено разрушение стека *: прекращено Прервано (ядро сброшено)
Game.cpp
public:
std::vector<Ball> m_balls; //list of ball in the current game, in case ball split in 3 energy ball
std::vector<Vault> m_vaults; //list of vaults , in case we are in cooperative mode
std::vector<Wall> m_walls; // lists of walls
int test; //Stack smashing wtf
Sdl_o_surface m_bg; // image containing sprites
Sdl_o_window m_window; //window containing one or more games (for the moment 1 or 2)
int score = 0;
int m_current_level = 1;
int m_x1; // borders of the game
int m_x2;
int m_y1;
int m_y2;
//constructor
Game(int x1, int x2 , int y1, int y2, int mode, Sdl_o_surface s, Sdl_o_window w);
//methods
void initSolo();
void initCoop();
void refreshWindowAndObjects();
void startGame();
void updatePosition();
void wallsCollision(Ball &ball);
void borderCollision(Ball &ball);
void vaultCollision(Ball &ball);
Sdl_o_rectangle getTexturePosition(); //get texture position depending on current level
Sdl_o_rectangle getBorders();
void parseLevelText();
void updateVaultsPosition(int x, int y);
//wall section
void chooseWallType(char type);
void placeWall(char t);