我正在写一个Qt 4.6应用程序(没有Qtdevise器),当我closures程序时,我从Visual Studio中得到这个错误:
Windows已经在Test.exe中触发了一个断点。
这可能是由于堆的损坏,这表明Test.exe或任何它已加载的DLL中的错误。
这也可能是由于用户在Test.exe有焦点时按F12。
输出窗口可能有更多的诊断信息。
这里是源代码:
Main.cpp
http://pastebin.com/DeUvZSHU TesterWindow.h
http://pastebin.com/SEVr8x40 TesterWindow.cpp
http://pastebin.com/MYUtZZGw Device.h
http://pastebin.com/bXKxVrmW Device.cpp
http://pastebin.com/H1kMcRes ExtWiiMote.h
http://pastebin.com/uX3HT9Yw ExtWiiMote.cpp
http://pastebin.com/p2TKZdHv (你不能编译它,我不能共享使用的库)
怎么了?
在你声明的ExtWiiMote.h
QLabel* dots[3][3];
并在ExtWiiMote.cpp
使用dots[3][0]...
修正dots
阵列大小,可能你会没事的。
上个月我有同样的错误,但由于许多不同的问题可能导致它,我不知道我的答案会帮助你。
这是由没有虚拟析构函数的派生类(Child)引起的。 每次调试器进入Child的析构函数时都会弹出错误。 由于我在工作,无法访问网站获取源代码,我无法检查这个。
希望这可以帮助你