当前位置: 首页 > news >正文

Qt基础之三十六:异常处理

本文将介绍如何在Qt中使用try...catch和调试dump文件来处理异常。
Qt版本5.12.6

一.使用try...catch

一段简单的捕获异常的代码,新建一个控制台工程,pro文件不用修改

#include <QCoreApplication>
#include <QDebug>int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QT_TRY {
        QT_THROW(QString("CSDN:Cao Shang Pa"));
    }QT_CATCH(QString excption){
        qDebug() << excption;
    }QT_CATCH(...){
        qDebug() << "Unknown Exception";
    }
    return a.exec();
}

输出:CSDN:Cao Shang Pa

QT_THROW那行如果改成:QT_THROW("CSDN:Cao Shang Pa");
输出:Unknown Exception

这是因为异常是强类型的,在catch异常的时候,一个特定类型的catch只能catch类型匹配的异常。
QT_TRY/QT_THROW

http://www.lryc.cn/news/90911.html

相关文章:

  • 【HMS Core】【ML Kit】活体检测FAQ合集
  • ChatGPT:使用OpenAI创建自己的AI网站,使用 flask web框架快速搭建网站主体
  • 后端(一):Tomcat
  • 华为OD机试之最小调整顺序次数、特异性双端队列(Java源码)
  • 2023年武汉住建厅七大员怎么报名?报名流程?精准题库一次过??
  • Rust每日一练(Leetday0014) 组合总和II、缺失正数、接雨水
  • EnjoyVIID部署
  • 用Python解决爱因斯坦的数学问题
  • ChatGPT提示词攻略之基本原则
  • 抖音seo源码如何开发部署?
  • Java中常见锁的分类及概念分析
  • ConcurrentLinkedQueue的源码解析(基于JDK1.8)
  • 低资源方面级情感分析研究综述
  • 将 PDF 压缩到 1 MB 或更小的 5 个工具
  • CSMA/CD协议之计算最短帧长问题
  • 第三章:什么是分库分表
  • SpringMVC第六阶段:数据在域中的保存(02)
  • Springboot +spring security,认证方式---HTTP基本认证的实现
  • 2023年系统分析师案例及论文(回忆版)
  • 数据结构与算法面试题
  • C Primer Plus第十章编程练习答案
  • 奇舞周刊第493期:Hook 革命!浅谈 React 新 Hook 的未来与思想
  • 文件包含的本质、预处理符号、# vs ##
  • 【JavaSE】Java基础语法(三十九):网络编程入门
  • 中间件SOME/IP简述
  • [自学记录03|百人计划]移动端GPU的TB(D)R架构基础
  • 详解Java枚举
  • ES6-ES13学习笔记(4.0)
  • 线段树C++详细讲解和个人见解
  • 构建sysbench的镜像