C++处理的异常的机制

简介: C++处理的异常的机制

   这种机制是由3各部分组成的:检查(try),抛出(throw)和捕捉(catch)。

异常处理的语法如下:

(1)throw语句的形式为

throw 表达式;

(2)try-catch的结构为

try

   {被检查的语句}

catch(异常信息类型 [变量名])

   {进行异常处理的语句}

说明:

(1)被检测的语句必须放在try块中,否则不起作用。

(2)try块和catch块作为一个整体出现,catch块是try-catch结构中的一部分,必须紧跟在try块之后,不能单独使用,在二者之间也不能插入其他语句,但是在一个try-catch结构中,可以只有try块而无catch块。即只检查而不处理,把catch处理块放在其他函数中。

(3)try和catch块中必须有用花括号包起来的复合语句,即使花括号内只有一个语句,也不能省略花括号。

(4)一个try-catch结构中只能有一个try块,但却可以有多个catch块,以便与不同的异常信息匹配

(5)catch后面的圆括号中,一般只写异常信息的类型名,如catch(double)

(6)如果在catch子句中没有指定异常信息的类型,而用了删节号“..."。则表示它可以捕捉任何类型时异常信息。

(7)try-catch结构可以与throw出现在同一个函数,也可以不在同一个函数中。

(8)在某些情况下,在throw语句中可以不包括表达式,如果在catch块中中包含throw:

catch(int)

{//其他语句

   throw;        //将已捕获的异常信息再次原样抛出

}

此时catch块把当前的异常信息再次抛出,给其上一层的catch处理。

(9)如果throw抛出的异常信息找不到与之匹配的catch块,那么系统就会调用一个系统函数terminate,使程序终止运行。

相关文章
|
22天前
|
存储 安全 编译器
【c++】深入理解别名机制--引用
本文介绍了C++中的引用概念及其定义、特性、实用性和与指针的区别。引用是C++中的一种别名机制,通过引用可以实现类似于指针的功能,但更安全、简洁。文章详细解释了引用的定义方式、引用传参和返回值的应用场景,以及常引用的使用方法。最后,对比了引用和指针的异同,强调了引用在编程中的重要性和优势。
33 1
|
2月前
|
安全 测试技术 C++
【C++篇】从零实现 C++ Vector:深度剖析 STL 的核心机制与优化2
【C++篇】从零实现 C++ Vector:深度剖析 STL 的核心机制与优化
65 6
|
2月前
|
安全 测试技术 C++
【C++篇】从零实现 C++ Vector:深度剖析 STL 的核心机制与优化1
【C++篇】从零实现 C++ Vector:深度剖析 STL 的核心机制与优化
66 7
|
7月前
|
SQL 安全 程序员
C++:异常
C++:异常
62 7
|
7月前
|
安全 C++
C++中的异常处理与错误处理机制
C++中的异常处理与错误处理机制
78 0
|
7月前
|
安全 Java 程序员
【C++】异常 -- 详解
【C++】异常 -- 详解
|
5月前
|
C++
C++ 异常机制问题之捕获异常的问题如何解决
C++ 异常机制问题之捕获异常的问题如何解决
|
5月前
|
安全 Java 程序员
【C++11】异常知多少
【C++11】异常知多少
50 7
|
7月前
|
缓存 安全 Java
从C语言到C++_35(异常)C++异常的使用+异常体系+异常优缺点(下)
从C语言到C++_35(异常)C++异常的使用+异常体系+异常优缺点
56 7
|
6月前
|
安全 C++
详细解读c++异常模板复习
详细解读c++异常模板复习
25 0