mfc 异常机制
异常
抛出异常
捕获异常 一、异常
迄今为止,我们处理程序中的错误一般都是用if语句测试某个表达式,然后处理错误的特定义代码。 C++异常机制使用了三个新的关键字 (SEH(结构化异常处理))
try ──标识可能出现的异常代码段
throw ──抛出一个异常
catch ──标识处理异常的代码段 提示:
使用异常处理将带来更多的系统开销。因此慎用异常。
二、抛出异常
throw
throw必须在 try代码块中.后边跟的值决定抛出异常的类型。
三、捕获异常
catch
出现在try代码块后,后边跟的数据决定捕获的类型
catch(...) //表示捕获所有异常 // helloc++.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h"
#include <malloc.h> int _tmain(int argc, _TCHAR* argv[])
{
int a,b;
a=;
b=;
try
{
if (b==)
{
//错误处理
throw "出错,除数为0";
// throw 111.0;
}
printf("%d",a/b);
}
catch(char *s)
{
//错误处理
}
catch (int i)
{
//整型错误代码处理
}
catch(...)
{
//所有异常类型
} getchar();
return ;
}
mfc 异常机制的更多相关文章
- Atitit 异常机制与异常处理的原理与概论
Atitit 异常机制与异常处理的原理与概论 1. 异常vs 返回码1 1.1. 返回码模式的处理 (瀑布if 跳到失败1 1.2. 终止模式 vs 恢复模式(asp2 1.3. 异常机制的设计原理 ...
- C++ 异常机制分析
C++异常机制概述 异常处理是C++的一项语言机制,用于在程序中处理异常事件.异常事件在C++中表示为异常对象.异常事件发生时,程序使用throw关键字抛出异常表达式,抛出点称为异常出现点,由操作系统 ...
- 【转载】C++异常机制的学习
参考了这篇文章:http://blog.chinaunix.net/uid-24517549-id-4079174.html 关于线程 进程和线程的概念相信各位看官早已耳熟能详.在这里,我只想带大家回 ...
- Java异常机制
Java异常分类 异常表明程序运行发生了意外,导致正常流程发生错误,例如数学上的除0,打开一个文件但此文件实际不存在,用户输入非法的参数等.在C语言中我们处理这类事件一般是将其与代码正常的流程放在一起 ...
- 黑马程序员——【Java基础】——面向对象(二)异常机制、包(Package)
---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的 ...
- C 几种异常机制简单讲述
引言 这是关于C中如何使用异常机制的讨论.顺带讲一讲C中魔法函数的setjmp内部机制.通过它实现高级的异常try...catch. 允许我先扯一段面试题. 对于计算机面试题. 算法题等.觉得还是有意 ...
- C++异常机制知识点
在这里总结一下,C++中的异常机制,以及如何使用异常的知识点 C++中处理异常的过程是这样的:在执行程序发生异常,可以不在本函数中处理,而是抛出一个错误信息,把它传递给上一级的函数来解决,上一级解决 ...
- [转载]C++异常机制的实现方式和开销分析
原文章网址:http://baiy.cn/doc/cpp/inside_exception.htm C++异常机制的实现方式和开销分析 白杨 http://baiy.cn 在我几年前开始写<C+ ...
- c++异常机制实现原理
今天突然看到一篇文章,讲异常机制的实现,所以分享一下:http://baiy.cn/doc/cpp/inside_exception.htm 内容讲的很深,但是编译器的实现是不是真是这样就不知道了,我 ...
随机推荐
- paramiko的安装与使用
paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接,支持在远程登录服务器执行命令和上传下载文件的功能. 安装 pycrypto下载地址: ...
- String使用equals和==比较的区别
"==" 操作符的作用: 1.用于基本数据类型的比较 2.判断引用是否指向堆内存的同一块地址. equals的作用: 用于判断两个变量是否是对同一个对象的引用,即堆中的内容是否相 ...
- mysql数据库配置文件
一.数据库配置文件 数据库配置文件是很一个很强大的功能,这是数据库管理员经常需要关注的配置文件. my.ini #这是在windows下的配置文件名称. my.conf #这是在linux下的配置 ...
- Java 的字符串,String、StringBuffer、StringBuilder 有什么区别?
String 是 Java 语言非常基础和重要的类,提供了构造和管理字符串的各种基本逻辑.它是典型的 Immutable 类,被声明成为 final class,所有属性也都是 final 的.也由于 ...
- JS代码高亮编辑器 ace.js
JS代码高亮编辑器 ace.js 字数254 阅读2 评论0 喜欢0 瞎扯 ace 是 js 实现的代码编辑器 编译打包之后的 ACE 代码 官网,未提供编译好的文件 ACE 拥有的特点 语法高亮超过 ...
- Alpha 冲刺报告
Alpha 冲刺报告(4/10) 队名:洛基小队 峻雄(组长) 已完成:继续行动脚本的编写 明日计划:尽量完成角色的移动 剩余任务:物品背包交互代码 困难:具体编码进展比较缓慢 ----------- ...
- linux-top命令查看内存CPU
转自:https://www.cnblogs.com/dragonsuc/p/5512797.html 查看多核CPU命令 mpstat -P ALL 和 sar -P ALL 说明:sar -P ...
- 关于 MFRC522引脚功能图
MFRC522是属于13.56mhz芯片.另外SI522也是13.56mhz芯片,SI522 PIN对PIN完全兼容MFRC522,并且软硬件兼容,且引脚功能图都是一样的,功能方面比MFRC522多A ...
- python redis 的基本操作指令
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' redis基本命令和基本用法详解 1.redis连接 2.redis连接池 3.redis基本命令 ...
- css笔记--用户界面样式
1.系统字体,系统颜色.根据关键字设置为系统某方面相同的字体和颜色 2.光标:鼠标移入时光标的不同显示方法,有十字键,手型:cursor:pointer;cursor:hand;要按顺序,cursor ...