下面两个这种类型的报错都一样。(跟xxx.dll和xxx.exe都没关系)
- 0x794CECC1 (Qt5Cored.dll)处(位于 xxx.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000003F 时发生访问冲突。
- 处未处理的异常: 0xC0000005: 读取位置 0x00000000时发生访问冲突
BUG的显示方式:
- 闪退
按照下面的方法并没有解决问题!
最近在用Qt开发一个客户端,但是按了一个按钮后总是闪退,百思不得其解,后来调试看了,然后到了这一步就提示错误。如图(其中m_acToken只是个QString类型的普通变量,不是指针!!!不是指针!!!):
此类问题究其原因,它就是因为指针访问有问题,有以下几个原因:
- 数据越界
- 空指针
- 无效指针
所以说,函数指针使用有问题,例如没初始化、分配的内存不够等。我这里没使用指针为什么会出现这种问题呢? new并没有解决问题!!!!
m_loginWindow = new LoginWindow(this);