资讯 更多 >>
C++异常机制 全球快播
当前聚焦:这个“傻小子”,一天涨...
天天消息!百名越港青年“组团”探...
防溺意识“驻”心头,绽放生命“闪...
目击者辟谣大妈坐高铁带电饭煲煮饭...
速递!上海发布今年首个高温橙色预...
祥明智能:7月3日融资买入1339.07万...
头条:电力设备及新能源行业周报:...
中国姑娘殷若宁获高尔夫大满贯冠军...
短讯!沿江高速溜筒河隧道双幅贯通
动态更多 >>
湖南房地产市场平稳发展 长沙...
新智认知: 新智认知数字科技股份有...
郑州银行董秘回复:我行董事长是否...
你们,温暖了2021
西安市新增27个中风险地区 目前有1...
广西新增本土确诊病例1例
哈尔滨市全域均为低风险地区
寒潮将影响我国中东部地区 四川盆...
昆明至哈尔滨一航班发现1名入境复阳...
陕西研考:封控区内考生在原报考点...
会展 更多 >>
美籍酿酒师在崇礼:中国是第二故乡...
河南项城报告2名疑似新冠肺炎病例 ...
浙江绍兴确诊病例首次零新增 上虞...
广西东兴实行全员居家隔离 启动口...
新疆全方位推进乡村振兴 “富春山...
云南瑞丽市主城区全员核酸检测结果...
内蒙古满洲里累计治愈出院本土确诊...
孙海洋夫妻驱车山东阳谷:还在为孙...
大国工匠追梦“玉米强国”40载:用...
让南海“海洋热带雨林”斑斓多彩
专题报道 
当前位置: 资讯 > >> 正文
 
C++异常机制 全球快播
来源:面包芯语     时间:2023-07-04 15:18:40

C++异常机制概述

异常对象

标准异常类描述头文件
exception最通用的异常类,只报告异常的发生而不提供任何额外的信息exception
runtime_error只有在运行时才能检测出的错误stdexcept
rang_error运行时错误:产生了超出有意义值域范围的结果stdexcept
overflow_error运行时错误:计算上溢stdexcept
underflow_error运行时错误:计算下溢stdexcept
logic_error程序逻辑错误stdexcept
domain_error逻辑错误:参数对应的结果值不存在stdexcept
invalid_argument逻辑错误:无效参数stdexcept
length_error逻辑错误:试图创建一个超出该类型最大长度的对象stdexcept
out_of_range逻辑错误:使用一个超出有效范围的值stdexcept
bad_alloc内存动态分配错误new
bad_castdynamic_cast类型转换出错type_info

catch 关键字

允许从非常量到常量的类型转换。

允许派生类到基类的类型转换。

数组被转换成指向数组(元素)类型的指针。


(相关资料图)

函数被转换成指向函数类型的指针。

栈展开、RAII

程序将输出:

程序运行结果:

若析构函数抛出异常,调用 std::abort() 来终止程序。

在析构函数中 catch 捕获异常并作处理。

noexcept修饰符与noexcept操作符

这是 throw 作为函数异常说明,前者表示 func()这个函数可能会抛出 int 或 double 类型的异常,后者表示 func() 函数不会抛出异常。事实上前者很少被使用,在 C++11 这种做法已经被摒弃,而后者则被 C++11 的 noexcept 异常声明所代替:

关于C++异常机制,欢迎在评论中和我探讨。觉得文章不错,请点赞和在看支持我继续分享好文。谢谢!

你好,我是飞宇,本硕均于某中流985 CS就读,先后于百度搜索以及字节跳动电商等部门担任Linux C/C++后端研发工程师。

同时,我也是知乎博主@韩飞宇,日常分享C/C++、计算机学习经验、工作体会,欢迎点击此处查看我以前的学习笔记&经验&分享的资源。

我组建了一些社群一起交流,群里有大牛也有小白,如果你有意可以一起进群交流。

欢迎你添加我的微信,我拉你进技术交流群。此外,我也会经常在微信上分享一些计算机学习经验以及工作体验,还有一些内推机会。

加个微信,打开另一扇窗

关键词:

热门推荐
猜你喜欢