社区
硬件/系统
帖子详情
一个关于在__try中使用有构造的类问题
clane
2003-10-20 04:33:00
编译时提示不能在__try中使用需要unwindding的局部类,有无办法可以解决这个问题的?
...全文
67
3
打赏
收藏
一个关于在__try中使用有构造的类问题
编译时提示不能在__try中使用需要unwindding的局部类,有无办法可以解决这个问题的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bullfinch
2003-10-23
打赏
举报
回复
用编译器指令/GX-
参看链接器错误C2712
clane
2003-10-20
打赏
举报
回复
en,你说的是try,catch
但我这里的问题是__try,__catch的SEH
而且我也没有在析构中抛出异常。。。
会思考的草
2003-10-20
打赏
举报
回复
局部对象在超出作用域后会进行析构,而一旦析构失败,会带来连锁反应。
C++的规则是你绝对不可以在另一个异常的被称为“栈展开(stack unwinding)”的过程中时,从析构函数抛出异常。举例来说,如果某人写了throw Foo(),栈会被展开,以至throw Foo()和 } catch (Foo e) { 之间的所有的栈页面被弹出。这被称为栈展开(statck unwinding)
在栈展开时,栈页面中的所有的局部对象会被析构。如果那些析构函数之一抛出异常(假定它抛出一个Bar对象),C++运行时系统会处于无法决断的境遇:应该忽略Bar并且在} catch (Foo e) { 结束?应该忽略Foo并且寻找 } catch (Bar e) { ?没有好的答案——每个选择都会丢失信息。
因此C++语言担保,当处于这一点时,会调用terminate()来杀死进程。突然死亡。
防止这种情况的简单方法是不要从析构函数中抛出异常。但如果你真的要聪明一点,你可以说当处理另一个异常的过程中时,不要从析构函数抛出异常。但在第二种情况中,你处于困难的境地:析构函数本身既需要代码处理抛出异常,还需要处理一些“其他东西”,调用者没有当析构函数检测到错误时会发生什么的担保(可能抛出异常,也可能做一些“其他事情”)。因此完整的解决方案非常难写。因此索性就做一些“其他事情”。也就是,不要从析构函数中抛出异常。
当然,由于总有一些该规则无效的境况,这些话不应该被“引证”。但至少99%的情况下,这是一个好规则。
c++多线程,adopt_lock_t/defer_lock_t/
try
_to_lock_t
std::adopt_lock_t struct adopt_lock_t {}; constexpr adopt_lock_t adopt_lock {}; 是
一个
空
类
,作为adopt_lock
类
型 对unique_lock or lock_guard的建造含糊,将adopt_lock作为...是
一个
空
类
,used as the type
Matlab
中
类
构造
函数方法
目录 ...
构造
函数方法是
一个
创建
类
实例的特殊函数。通常,
构造
函数方法接受输入参数来指定存储在属性
中
的数据,并返回初始化的对象。 所有 MATLAB®
类
都有默认的
构造
函数方法。此方法返回在没有输.
nginx 配置
中
try
_files、alias、root解析
按指定顺序检查文件是否存在,并
使用
找到的第
一个
文件进行请求处理;该处理是在当前上下文
中
执行的。文件的路径是file根据根和别名指令从参数
构造
的 。可以通过在名称末尾指定斜杠来检查目录是否存在,例如“ $uri/...
C# ——设计
一个
Windows应用程序,在该程序
中
首先
构造
一个
学生基本
类
,再分别
构造
小学生,
中
学生,大学生等派生
类
设计
一个
Windows应用程序,在该程序
中
首先
构造
一个
学生基本
类
,再分别
构造
小学生,
中
学生,大学生等派生
类
,当输入相关数据,单击不同的按钮(小学生,
中
学生,大学生)将分别创建不同的学生对象,并输出当前学生总...
IDEA
try
catch快捷键、 快速生成get set 方法快捷键、快速生成有参和无参
构造
方法快捷键
IDEA
try
catch快捷键、 快速生成get set 方法快捷键、快速生成有参和无参
构造
方法 1、
try
catch快捷键 小伙伴们在写代码的过程
中
,有时需要抛出异常,手写太浪费时间,我们想
使用
快捷键;当
使用
IDEA时,
try
… ...
硬件/系统
2,640
社区成员
17,239
社区内容
发帖
与我相关
我的任务
硬件/系统
VC/MFC 硬件/系统
复制链接
扫一扫
分享
社区描述
VC/MFC 硬件/系统
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章