当前位置: 首页 > 网络知识

C++快速入门 第三十二讲:assert函数和捕获异常

时间:2026-01-29 09:25:41

C语言和C++都有一个专门为调试而准备的工具函数assert函数。这个函数是在assert.h库文件里定义的。

实例1:assert函数应用

1 #include <cassert> 2 //assert()函数需要有一个参数,它将测试这个输入参数的真或者假状态 3 //如果为真 Do nothing 4 //如果为假 Do sething 5 int main() 6

同样为了对付潜在的编程错误(尤其是在运行时的错误),捕获异常是一种完全不同的方法。简单说,异常就是与预期不相符合的反常现象。

注:每条try语句至少要有一条配对的catch语句。必须定义catch语句以便让它接收一个特定类型的参数。

当某个try语句块里执行过throw语句,它后面的所有语句(截止到这个try语句块末尾)将永远不会被执行。

如果try语句块无法找到一个与之匹配的catch语句块,它抛出的异常将中止程序的执行。

实例2:捕获异常(try,catch,throw)

1 #include <iostream> 2 #include <climits> 3 4 using namespace std; 5 unsigned long returnFactorial(unsigned short num) throw(const char*); 6 7 int main() 8 17 cin.ignore(100,'\n'); 18 try 19 24 catch(const char *e)//如果正常则不执行,抛出异常则执行 25 28 return 0; 29 } 30 31 unsigned long returnFactorial(unsigned short num) throw(const char*) 32 41 if(max < 1) 42 45 else 46 49 }


上一篇:C++快速入门 第四十讲:命名空间与模块化编程2
下一篇:C++快速入门 第四十一讲:命名空间
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素