VC++ 异常处理
来源:互联网 发布:流水灯单片机汇编程序 编辑:程序博客网 时间:2024/04/29 09:08
使用一种强制的机制保证一些致命错误能够被处理是一个明智的选择。比如说内存错,文件错等等。
在C++中引入了一种在C语言中不存在的特性,错误捕捉机制(try/catch),这是一种强制性的机制,如果程序中抛出的异常未被成功捕捉,该异常将一直会沿着函数调用的顺序上升,直到被捕捉到为止。而默认的main函数之外存在有异常捕捉代码,这段默认的异常捕捉代码将会终止程序并报告异常的发生。
catch(...)将会捕捉所有未指明类型的异常。在这里我们可以看到异常是可以分为很多类的,而分类的依据就是抛出异常时候所使用的数据类型。
抛出异常的语法很简单,使用关键字throw就可以了,后面跟异常常的类型。如果单独使用throw则表示继续抛出当前异常,这种用法表明在处理当前异常后继续将该异常传递给其他的异常处理块进行处理。
在MFC中定义了一些专门用于处理异常的类,所有这些类都由CException派生,并各自负责不同的异常情况,在MFC内部出现异常并抛出异常时将会抛出以下异常类:
类 用途
CException 异常基类
CNotSupportedException 进行系统不支持的操作时抛出的异常类
CMemoryException 内存分配失败时抛出的异常类
CArchiveException 文件串行化失败时抛出的异常类
CFileException 文件读写错误时抛出的异常类
CResourceException 资源无法装入时抛出的异常类
COleException OLE发生异常时抛出的异常类
CInternetException 使用WinInet功能时抛出的异常类
CUserException 用户定义的异常类
例:
CHttpFile* pHttpFile;
.................
try{
pHttpFile->SendRequest();
.....
}
..........
catch( CInternetException *e ){
e->Delete();
....
}
..............
- VC++ 异常处理
- VC++ 异常处理
- VC异常处理随笔
- VC的异常处理
- VC异常处理
- VC中的异常处理
- VC异常处理
- VC++异常处理
- VC异常处理随笔
- VC异常处理(4)
- VC中的异常处理
- Halcon-VC异常处理
- VC异常处理 finally(5)
- VC编译选项 /EHa 异常处理
- VC编译选项 /EHa 异常处理
- vc++6.0中的图形图像处理
- 关于c++异常处理
- VC程序异常处理,异常日志生成,及与源代码对应,异常捕捉
- one or more multiply defined symbols found
- StringBuilder的用法及和String的区别
- php技术点滴记录
- 浮点类型 取指定的小数位数
- webwork文件上传总结
- VC++ 异常处理
- 破windows xp登陆密码
- 我回来啦
- 欢迎访问我的博客
- 浅谈C中的malloc和free
- 第1节 C#2.0新特性之四:迭代器
- 2008届最佳开源CMS大赛决赛名单
- 复制时间段里的文件
- 在javascript中获得指定的asp.net控件