• 4418阅读
  • 7回复

[提问]内存泄露 [复制链接]

上一主题 下一主题
离线xuxb
 
只看楼主 正序阅读 楼主  发表于: 2012-12-12
关键词: 内存泄露
高手请指点一下: 出现内存泄露问题
看看下面这个是不是内存泄露问题啊??
Debugging starts
HEAP MyDialog.exe ]: Heap block at 0BCAEA78 modified at 0BCAEAB0 past requested size of 30
HEAP[ MyDialog.exe ]: Invalid Address specified to RtlFreeHeap( 003D0000, 0BCAEA80 )
而且程序只能调试  不能运行 如果运行就会输出 下面这些信息
E:\Qt\Demo\MyDialog-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug\debug\MyDialog.exe exited with code -1073741819
异常退出
承接C/C++ MFC Qt  网络通信等项目!!!
在线uidab

只看该作者 7楼 发表于: 2012-12-13
回 6楼(xuxb) 的帖子
那先把所有指针都注释掉,然后一个一个加。看看是谁的问题。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线xuxb
只看该作者 6楼 发表于: 2012-12-13
我就是把上面那个注释掉了 然后指定父类

还是不可以
承接C/C++ MFC Qt  网络通信等项目!!!
在线uidab

只看该作者 5楼 发表于: 2012-12-13
回 4楼(xuxb) 的帖子
楼上的意思是你指定了之后, 这个函数里啥也不用写。如果还不行clean一下。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线xuxb
只看该作者 4楼 发表于: 2012-12-13
引用第3楼jdwx于2012-12-12 22:07发表的  :
[code]MyDialog:~MyDialog()
{
  delete m_pRightTop;
  delete m_pRight;
  delete m_pLeft;
.......

我就是指定了parent 但是还是不行啊
承接C/C++ MFC Qt  网络通信等项目!!!
离线jdwx

只看该作者 3楼 发表于: 2012-12-12
  1. MyDialog:~MyDialog()
  2. {
  3.   delete m_pRightTop;
  4.   delete m_pRight;
  5.   delete m_pLeft;
  6.   delete m_pLeftInfo;
  7.   delete m_pStackWidget;这个是Qt的QStackedWidget?
  8.   delete m_pRightSplitter;QSplitter?
  9. } //
  10. 如果上面六个全是Qt的控件,不需要写delete的代码,程序关闭的时候那些控件会被自动删除。
  11. 只要new的时候指明parent,如:QLabel *label = new QLabel(this);



发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线xuxb
只看该作者 2楼 发表于: 2012-12-12
光标 停在花括号
承接C/C++ MFC Qt  网络通信等项目!!!
离线xuxb
只看该作者 1楼 发表于: 2012-12-12
MyDialog:~MyDialog()
{
  delete m_pRightTop;
  delete m_pRight;
  delete m_pLeft;
  delete m_pLeftInfo;
  delete m_pStackWidget;
  delete m_pRightSplitter;
} // 调试的时候鼠标指向这里
承接C/C++ MFC Qt  网络通信等项目!!!
快速回复
限100 字节
 
上一个 下一个