#include "stdafx.h"
#include <iostream>
using namespace std;
enum EHstate{ noErr, zeroOP,nega, severeError};
enum EHstate state = noErr;
int mathFunc(int i)
{
if(i == 0)
{
throw state;
}
}
void calculate(int op)
{
try
{
mathFunc(op);
}
catch(EHstate &eobj)//声明为引用
{
eobj = severeError;//此处未修改全局变量的值
}
}
int _tmain(int argc, _TCHAR* argv[])
{
cout<<"全局变量:"<<state<<endl;
calculate(0);
cout<<"全局变量:"<<state<<endl;
return 0;
}
#include "stdafx.h"
#include <iostream>
using namespace std;
enum EHstate{ noErr, zeroOP,nega, severeError};
enum EHstate state = noErr;
int mathFunc(int i)
{
if(i == 0)
{
throw state;
}
}
void calculate(int op)
{
try
{
mathFunc(op);
}
catch(EHstate eobj)//此处为对象,不是引用
{
eobj = severeError;//修改此局部对象
throw;//抛出的仍然是原始的异常对象,而非修改的局部对象
}
}
int _tmain(int argc, _TCHAR* argv[])
{
cout<<"全局变量:"<<state<<endl;
try
{
calculate(0);
}
catch(EHstate eobj)
{
cout<<"捕捉的异常对象值:"<<eobj<<endl;
}
cout<<"全局变量:"<<state<<endl;
return 0;
}
分享到:
相关推荐
### C++异常处理详解 #### 引言 随着软件项目的规模不断扩大,确保软件质量变得日益复杂且至关重要。软件产品在实际应用中面临多种潜在风险,包括但不限于程序崩溃、数据丢失等,这些问题严重影响用户体验及系统...
C++异常处理总结 C++语言提供了异常处理机制,用于处理程序中的错误和异常情况。异常处理机制可以使程序结构更清晰、更健壮,并且可以防止程序崩溃。下面是C++异常处理机制的核心要点: 1. 如果使用普通的处理方式...
这两天我写了一个测试c++异常处理机制的例子,感觉有很好的示范作用,在此贴出来,给c++异常处理的初学者入门。本文后附有c++异常的知识普及,有兴趣者也可以看看。下面的代码直接贴到你的console工程中,可以运行...
"C++异常处理 王胜祥"这份文档,很可能详细阐述了C++中的异常处理机制,包括何时、为何以及如何使用异常来增强代码的健壮性。下面是对C++异常处理的一些核心知识点的详细解释。 1. **异常的基本概念**:在C++中,...
【C++异常处理】 C++异常处理是一种机制,旨在提高程序的健壮性和可靠性,它允许程序员在程序中处理可能出现的错误情况,而无需在每个可能出错的地方都插入检查和错误处理代码,从而简化了错误处理代码。C++异常...
c++异常处理课件,可以看看,c++异常处理练习
关于C++异常处理和Win32结构化异常处理(Structured Exception Handling, SEH)的知识点,我们可以深入探讨其原理、差异以及如何在Windows平台上有效利用这两种机制。 ### C++异常处理 C++中的异常处理机制主要由`...
C++异常处理.ppt ,相信对学习c++的你来说一定有帮助
3. 标准 C++异常处理的基本语法和语义 4. 实例剖析 EH 5. C++的 new 和 delete 操作时的异常处理 6. Microsoft 对于的实现版本中的异常处理 7. 部分构造及 placement delete 8. 自动删除,类属 new 和 delete、...
- **混合使用**: 如何在C++程序中同时使用C++异常处理和SEH。 - **兼容性问题**: 讨论混合使用时可能出现的兼容性问题。 通过以上内容的详细介绍,我们可以看到C和C++中的异常处理机制是非常强大且灵活的,不仅可以...
### C++异常处理总结 #### 一、引言 异常处理是C++语言中的一个重要特性,它能够有效地增强程序的健壮性和可维护性。在实际编程中,正确地运用异常处理机制对于处理不可预知的错误至关重要。本文将从以下几个方面...
### C/C++异常处理方法总汇 #### 引言 在C/C++编程中,异常处理是一项关键的技术,尤其对于构建稳定、可靠的软件系统至关重要。本文将深入探讨C/C++中的异常处理机制,包括传统的错误处理方法与现代的异常处理机制...
C++异常处理是一种机制,用于在程序运行时捕获并处理错误或异常情况。在C++中,异常处理是通过关键字`try`、`catch`和`throw`来实现的,这种机制允许程序员在可能出现错误的代码块中插入检查点,并在错误发生时将...
C++异常处理是C++语言中用于处理程序运行时可能出现的错误和异常情况的一种机制,它允许程序在遇到错误时,能够从错误点继续执行,而不是直接崩溃。异常处理通常通过try、catch和throw三个关键字来实现。 try块包含...
C++异常处理机制是C++编程中用于处理程序运行时出现错误或异常情况的重要工具。在C++中,异常处理允许程序员优雅地处理错误,而不是让程序崩溃或产生未定义的行为。这一机制允许代码在出现问题时抛出一个异常,然后...
总的来说,这些文档构成了一套全面的学习资源,涵盖了C++异常处理的基础和高级概念,以及C++标准和ABI的细节。深入学习这些内容,将有助于提升你对C++的深刻理解和应用能力,从而编写出更加健壮和高效的代码。
C++异常处理是C++语言提供的一种错误处理机制,它允许程序在遇到运行时错误时,可以安全地将控制权从出错点转移到能够处理这种情况的代码块中。异常处理通过三个关键的结构来实现:try、throw和catch。 首先,try块...
**C++异常处理理论概述** 在C++编程中,异常处理是一种重要的错误处理机制,它允许程序员在程序运行时捕获并处理意外的情况,而不会导致程序立即终止。本资料主要探讨C++中的异常处理机制,包括其基本概念、语法...
c++异常处理实现标准c++异常处理实现标准