当前位置: 首页 > 热点

简述C++程序异常处理机制

发布时间:2023-06-30 12:16:14 来源:面包芯语


(资料图)

1、什么是异常处理

有经验的朋友应该知道,在正常的C和C++编程过程中,难免会碰到程序不按照原本设计运行的情况。

最常见的有除法分母为零,数组越界,内存分配失效、打开相应文件失败等等。

一个程序的健壮不仅仅有算法上的优越性,还存在程序对各种异常情况的识别和处理能力,如果对这些异常没有得到较好的处理,就非常容易引起程序的奔溃。

那么C++设计了一套异常处理机制,一方面能够使得异常处理和正常运行代码进行分离,使得程序更加模块化;另一方面,C++的异常处理可以不需要异常处理在异常发生时的同一个函数,而是可以在更上层合适的位置进行处理。

下面,我们一起来看看C++的异常处理。

2、异常处理语法

C++异常处理涉及到3个关键字:

throw---抛出一个异常,带参数try---用于标识可能会出现异常的代码段catch--是用于标识异常处理的代码段
#includeusingnamespacestd;intmain(intargc,char**argv){try{cout<<"RunNormal"<

3、try-catch注意事项

上面的例子挺简单的,不过异常处理机制还有很多值得注意的使用方法:

1、当throw抛出异常以后,会以函数调用的方式一层一层的寻找相应的catch,如果当前函数层没有找到会立马返回到上层函数进行查找,如果一直没有找到程序就会停止运行。

#includeusingnamespacestd;voidFunctionDown(void){cout<<"RunNormal"<

2、同一个try可以带多个catch用于不同异常的处理。且不同的catch依次匹配异常参数,匹配后便会执行,否则会继续往上层进行catch匹配。

老规矩,写个代码验证一下:

#includeusingnamespacestd;voidFunctionDown(void){cout<<"RunNormal"<
标签:

Copyright   2015-2022 西南质量网 版权所有  备案号:皖ICP备2022009963号-8   联系邮箱:39 60 29 14 2@qq.com