c++异常
来源:互联网 发布:淘宝卖家货到付款流程 编辑:程序博客网 时间:2024/06/05 22:53
assert ()断言,为真继续,为假终止。
异常处理更为高级,可处理相应异常。
C++的异常处理引入了三个关键字 try(检测异常)、throw(抛出异常)、catch(捕获异常)。
try 负责监视可能出现异常的程序段。若该段出现异常,程序将不再按原有流程走,而是被throw抛出异常,程序控制权交给catch子句,然后从catch块处顺序执行。
try 与 catch 语句块必须紧连。
异常处理机制可以将正常语句与异常处理语句分开表示,使逻辑结构更清晰。
异常处理流程:
1.执行try{}块中的语句。
2.若没有引起异常,则跳过catch块继续执行。
3.若引起异常,并由throw抛出,则进入catch块。
4.若未找到区配异常的catch块,程序自动调用系统函数terminate()结束自己。
调试时会输出异常,而正式运行时却不会执行catch{}里面的语句,暂时不懂。
异常中断了程序的正常流程,所以异常涉及到的对象可能为无效状态。那些在异常发生期间正确执行了“清理”工作的代码被称作是异常安全的。
例一:
例二:
stdexcept头文件定义了常见的异常类,runtime_error是其中一个,what()是它的成员函数,返回创建异常对象时的字符串参数。
0 0
- C异常
- 【c++】异常
- 【C/C++】异常机制
- 异常类型 描述(C#)
- c#中的异常处理
- Exception异常类(C#)
- 捕捉异常 (Visual C#)
- 异常处理 - [C++]
- c异常处理
- Objective-c异常处理
- VS2005(C#)异常解决方案
- object-c 异常
- C语言异常处理
- c 异常处理
- Objective-C中的异常
- C编译异常集锦
- 用C模拟异常
- C 异常处理设计
- 如何在新公司尽快适应
- 美化listView:去阴影,去默认滚动色
- oracle 统计信息收集包:DBMS_STATS
- js prototype的解释
- FZU 2150
- c++异常
- 黑马程序员_object c学习日记①_类的声明定义、点语法及成员变量作用域
- Android驱动移植初识
- Unable to resolve target 'android-14'
- C#.NET自定义报表数据打印
- eclipse中如何修改编码格式
- Android 多个Activity之间跳转和通信
- 题目1062:分段函数
- 虚函数工作原理 与 (继承中)对象占用空间大小