C++异常的概念是什么

技术C++异常的概念是什么C++异常的概念是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。运用编程语言进行程序开发时,都需要进行异常的处理,才能使我

C异常的概念是什么?针对这个问题,本文详细介绍了相应的分析和解决方法,希望能帮助更多想要解决这个问题的小伙伴找到更简单易行的方法。

当使用编程语言开发程序时,我们需要处理异常,以使我们的程序完美。在C语言中,也有关于异常处理的操作。在这里,我们将介绍几种常见的C异常的操作方法,希望能给大家带来一些帮助。

c后面跟关键字throw(某物)来限制这个函数的异常安全性。

Void f() throw()表示f不允许抛出任何异常,即f异常安全。

Void f() throw(.)意味着f可以抛出任何一种异常。

void f()throw(Exception TYPe);意味着f只能抛出异常类型为exceptionType的c异常。

介绍别人的一个笑话:

Throw()大概会说:“哦,不管你扔什么,都不准扔。"

投掷(.)他笑着和蔼地看着:“扔吧,扔吧,尽情地扔吧。"

扔(型)听到这里急了:“那不可能。你要扔,只能扔我的烟头。否则,如果你不小心扔掉了我祖传的金戒指,那将是一个巨大的损失。"

c异常传输有三种方法:

1.传值(by value)

在传递值的过程中,会产生临时对象的副本,无法解决多态问题,具体如下:myexception继承了exception,但无法正确调用,导致异常对象被切割。

classmyexcept : public except { public : virtual const char * what()throw();};const char * myexception : what(){ return ' myexception ';} CLaSS a { public : a(){ } void f()throw(){ throwmyexception();}};int main(){ Aa;尝试{ a . f();} catch(exception exc){ cout exc . what();}}运行结果:未知异常。

程序的执行是什么方法调用异常,而不是什么方法的myexception。

2.传指针(by pointer)

指针可以是多态的,但是临时对象的地址经常作为指针发送出去,导致挂指针的错误。如果在堆上分配内存空间,往往不知道什么时候删除对象,就会出现生存还是毁灭的错误。

结果显示:我的异常。

class myexcept : public except { public : virtual const char * what()const;};const char * myexcept : what()const { return ' myexcept ';} CLaSS a { public : a(){ } void f()throw(){ thrownew myexception();}};int main(){ Aa;尝试{ a . f();} catch(exception * pexc){ coutpexc-what();deletepexc} }3.传引用(by reference)

传递引用是* * *,可以克服前面两个问题。

程序结果显示:兆字节异常。

class myexcept : public except { public : virtual const char * what()const;};const char * myexcept : what()const { return ' myexcept ';} CLaSS a { public : a(){ } void f()throw(){ throwmyexception();}};int main(){ Aa;尝试{ a . f();} catch(exception exc){ cout exc . what();}}关于C异常概念的问题的答案就分享到这里了,希望。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/52396.html

(0)

相关推荐

  • SQLPLUS下普通用户启用AUTOTRACE报错怎么办

    技术SQLPLUS下普通用户启用AUTOTRACE报错怎么办这篇文章将为大家详细讲解有关SQLPLUS下普通用户启用AUTOTRACE报错怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所

    攻略 2021年11月17日
  • Oracle中如何解决ORA-01555错误

    技术Oracle中如何解决ORA-01555错误这篇文章给大家分享的是有关Oracle中如何解决ORA-01555错误的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。11.6 ORA-01555

    攻略 2021年11月20日
  • DFS简介与Shell管理命令是什么

    技术DFS简介与Shell管理命令是什么这篇文章给大家介绍DFS简介与Shell管理命令是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、HDFS基本概述1、HDFS描述大数据领域一直面对的两

    攻略 2021年11月11日
  • 抖音刷粉网址,人工刷粉丝会被封号吗?

    技术抖音刷粉网址,人工刷粉丝会被封号吗?抖音是当下非常受欢迎的一个社交软件,这样一个宣传度广的社交平台自然会吸引很多商家入驻广告,也就会衍生出很多的带货网红。成长一个做宣传推广的带货网红,前提是要有人气要有粉丝关注才能有

    测评 2021年11月11日
  • 牛客网面试题

    技术牛客网面试题 牛客网面试题目录
    一、JAVA
    二、计算机网络
    三、操作系统
    四、项目
    五、数据库
    第六部分 框架
    第七部分 设计模式
    第八部分 数据结构和算法
    第九部分 Linux
    ########

    礼包 2021年12月20日
  • adj,English~~~~~~

    技术adj,English~~~~~~不定式和ing分词都可以做主语adj,注意几点:a)陈述句中:两者没什么区别。但在口语中,ing分词用的比不定式多。b)疑问句中:总是使用ing分词作主语
    c)否定句中:必须使用in

    生活 2021年10月21日