c++异常处理

1.abort()函数

在程序异常时用于终止程序;

包含于头文件

实例:

c++异常处理_第1张图片

 //算式分母为a+b,如果a=-b,则程序终止并发出警报;

2.异常机制

异常处理的组成部分

(1)抛出异常:程序异常跳出当前部分,throw+抛出内容;

(2)捕获异常:处理异常的程序捕获异常,catch(捕获内容);

(3)使用try块:标识可能抛出异常的程序块,try{};

//******如图,对之前程序作出改进

c++异常处理_第2张图片

 //

在hmean(x,y)处,如果输入x=-y,则程序正常运行,如果输入x=-y,则程序跳出try块,执行catch语句(报错)

 

 3.将对象用作异常类型

throw可以抛出仍和类型的值;

catch捕获抛出值的类型,用不同的类型标识不同的错误;

如图,定义一个类bad_hmean,用于接收函数hmean中的抛出,并定义成员函数mesg()用于显示错误原因:

c++异常处理_第3张图片

c++异常处理_第4张图片

 //将对象用作异常类型,明确异常原因,提高了程序的可读性;

另外,当程序中用到多个抛异常的函数,可以通过抛出的类型确定不同的处理;

4.exception类

c++标准类;

用作其他类型的基类;

有一个返回字符串的虚函数what,返回出错原因;

捕获时,可以用基类对象的引用,从而不需要多个catch;

实例:

c++异常处理_第5张图片

 

 

 

 

你可能感兴趣的:(笔记,c++,c语言)