- 1
- 0
- 约1.13千字
- 约 3页
- 2023-06-07 发布于上海
- 举报
C#和 Qt 实现的对于异常处理的一个使用策略
一、基础
1、C#中的异常处理的基本格式:
try
{
}
// ......
catch(Exception exception)
{
// ......
}
finally
{
// ......
}
一般来说 finally 代码段用于处理没有被托管的资源的释放过程。2、Qt 中的异常处理基本格式
try
{
}
// ......
catch(QString exception)
{
// ......
}
二、异常捕获的策略
1、try 块的范围应该尽可能小。把代码块两端的代码逐渐剔除出去即可。
2、能够用if 语句来捕获异常,就不要用try 来捕获。例如判断被除数是否为0,再如判断某个对象是否为空。
3、能够确定具体的异常类,就不要用Exception。
4、在一个类的范围内,为了类的完备性,对可能出错的地方抛出异常,让上层模块来
处理。
5、捕获异常后,自己能够合理处理的,自己处理掉;若是仍然没法处理的,抛出一个新的异常对象,Message 中包括当前类的类名+当前方法名、接收到的异常信息。这样有助于调试时的定位。
C#
// 修正,C#有更好的处理方法
Qt
try
{
}
throw ClassName.MethodName();
catch(SQtring exception)
{
throw NewClassName.MethodName():+exception.Message;
}
6、最高层的的异常处理策略1)C# Console:
C#中获取所有异常消息的方法:
string Message(Exception exception)
{
var result = string.Empty; if(exception != null)
{
result += exception.Message; result += \n;
result += exception.StackTrace; result += \n;
result += Message(exception.InnerException);
}
return result;
}
Console.WriteLine(Message(exception));
Console.ReadKey();
C# Winform:
MessageBox.Show(Message(exception)); Application.Exit();
Qt
QMessageBox *message=new QMessageBox(); message-setText(exception);
message-show(); return 0;
您可能关注的文档
- BIM建筑信息模型技能等级考评大纲.docx
- BK5200 5210 5220 DeviceNET总线耦合器分析和总结.docx
- BP模板分析和总结.docx
- brownbear教案分析和总结.docx
- B西师版五年级上册数学期末复习试题.docx
- C 程序设计课程设计报告.docx
- C19033S中华传统文化与核心价值观30题全部答案.docx
- CA6140拨叉831007说明书分析和总结.docx
- CA6140车床拨叉设计说明书.docx
- CA6140车床上的法兰盘.docx
- 河北盐山中学等校2025-2026学年上学期高三一模化学试卷(含解析).docx
- 河北正定中学2025-2026学年高一上学期期末考试物理试卷(含解析).docx
- 河北张家口市怀安县2025-2026学年第一学期期末教学综合评价八年级地理试卷(含解析).docx
- 河南安阳市殷都区2025-2026学年第一学期期末教学质量检测七年级地理试卷(含解析).docx
- 河南安阳市滑县2025一2026学年第一学期期末学业质量监测八年级地理试题(含解析).docx
- 河南安阳市林州市2025-2026学年上学期期末考试高一政治试题(含解析).docx
- 河南焦作市武陟县第一中学2025-2026学年高一上学期1月月考语文试卷(含解析).docx
- 河南济源市2025-2026学年上学期期末学业质量调研七年级历史试卷(含解析).docx
- PICC导管并发症的紧急处理与护理.pptx
- 河南鹤壁市2025-2026学年高二上学期期末考试生物试题(含解析).docx
最近下载
- (新版)架子工高级理论知识题库.docx VIP
- 跨越分数+拥抱成长+课件--2025-2026学年高二上学期考后心理调适主题班会.pptx VIP
- 专业功放测试条件和标准.doc
- 2025年河北语文中考试卷真题及答案.pdf VIP
- 经皮肾镜取石术相关尿脓毒症.ppt
- 【国联民生-2026研报】前瞻研究系列报告:序曲的终章:战争中的财富“庇护所”.pdf VIP
- 浙江省执业医师注册健康体检表(新).docx VIP
- 2025-2026学年高二上学期《内外兼修,与时偕行——探寻成长的力量之源》主题班会课件.pptx VIP
- 成人吞咽障碍患者口服给药护理-2025中华护理学会团体标准.pptx VIP
- 八上必读名著《昆虫记》中考真题(含答案).docx VIP
原创力文档

文档评论(0)