Повреждение памяти в Qt heap - PullRequest
0 голосов
/ 26 августа 2010

Я пишу приложение Qt 4.6 (без дизайнера qt), и когда я закрываю программу, я получаю эту ошибку из Visual Studio:

Windows вызывает точку останова в Test.exe.

Это может быть связано с повреждением кучи, которая указывает на ошибку в Test.exe или любой из загруженных им DLL-библиотек.

Это также может быть вызвано нажатием клавиши F12 пользователемв то время как Test.exe имеет фокус.

В окне вывода может быть больше диагностической информации.

Вот исходный код:

(Вы не можете скомпилировать, я не могу поделиться использованной библиотекой)

Что не так?

Ответы [ 2 ]

4 голосов
/ 26 августа 2010

В ExtWiiMote.h вы объявили

QLabel* dots[3][3];

, а в ExtWiiMote.cpp вы используете dots[3][0]....

Исправьте dots размер массива, и, вероятно, все будет в порядке.

0 голосов
/ 26 августа 2010

У меня была та же ошибка в прошлом месяце, но так как множество разных проблем может вызвать ее, я не уверен, что мой ответ поможет вам.

Это было вызвано производным классом (Child) без виртуального деструктора,Ошибка появляется каждый раз, когда отладчик входит в деструктор Child.Так как я на работе и не могу получить доступ к веб-сайту для получения исходного кода, я не могу проверить это.

Надеюсь, это может помочь вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...