QT程序异常结束问题分析

Qt程序异常结束分为

1.运行中异常结束

运行中异常结束往往就是程序卡死,长时间无法响应,或者响应一段时间后异常结束。

长时间卡死、无法响应就要看看程序是否进入了死循环或者是较长的循环,如果是比较耗时的处理可以放在线程中进行处理,避免等待处理时间过长无法响应。

卡死一段时间异常结束很大的可能就是内存泄漏的情况,首先检查一下指针是否只定义了却没有没有初始化,或者指向的内容为nullptr,直接使用了,导致使用的指针根本没有东西,所以程序崩溃。

2.启动异常结束

启动异常结束就是还没开始就已经结束了。。。
这个部分主要是与动态链接库有关,不妨先认识一下lib和dll的区别https://zhidao.baidu.com/question/878053240158748652.html
基本上就是外部库没有添加好,怎么添加呢,我提供代码添加的方式(手动引入外部库的图片有点多,我就不贴了,百度有)
1.直接访问外部库文件

//-L+文件路径+\
//这个是直接通过路径访问外部库里面的dll和lib文件
LIBS += -LE:/opcv/opencv/build/x64/vc14/lib \
        -lopencv_world344

2.引用外部库文件
需要在构建文件release/debug中加入手动加入lib文件对应的dll,毕竟lib是构建,dll是运行。

LIBS += E:/opcv/opencv/build/x64/vc14/lib/opencv_world344.lib

你可能感兴趣的:(Qt各种奇葩错误,qt5,dll)