免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 变异老鼠

异常安全的代码写起来还是很纠结的 [复制链接]

论坛徽章:
0
发表于 2011-12-03 22:33 |显示全部楼层
回复 9# 幻の上帝


    你非要这样我也没办法。

论坛徽章:
0
发表于 2011-12-03 22:37 |显示全部楼层
回复 7# 三月廿七


    就像qt说的,多用指针比较舒服,我也这样感觉。用引用,既不能像java那样纯粹,又不能像c那么自然,半洋半土反而麻烦。

但还c++的RAII以及析构的自动调用又是好东西。如果cx1能实现这个功能那就好了:struct超出作用域自动调用一个默认的函数,用户可重定义这个函数。

论坛徽章:
0
发表于 2011-12-03 22:44 |显示全部楼层
auto_ptr要废弃了吧,考虑shared_ptr

论坛徽章:
0
发表于 2011-12-04 08:06 |显示全部楼层
本帖最后由 三月廿七 于 2011-12-04 08:11 编辑
回复  三月廿七


    就像qt说的,多用指针比较舒服,我也这样感觉。用引用,既不能像java那样纯粹,又 ...
walleeee 发表于 2011-12-03 22:37


用不着为了一棵树而放弃整个森林
c++ 也就是在 RAII那里方便一点, 但他带来的麻烦却是无止尽的,
有些人正因为 那些麻烦 而自豪呢.

论坛徽章:
0
发表于 2011-12-04 11:40 |显示全部楼层
回复 11# walleeee

你是指有什么需求不能被满足么。
怕做过头的话,先catch(xxx)再catch(...)也行。

论坛徽章:
0
发表于 2011-12-04 11:53 |显示全部楼层
回复 12# walleeee

>>就像qt说的,多用指针比较舒服,我也这样感觉。用引用,既不能像java那样纯粹,又不能像c那么自然,半洋半土反而麻烦。
指针是比较舒服,接口看起来最简洁。可惜没有禁止nullable可以选。
Java引用的纯粹只是表面现象;选择Java就意味着存储就没那么自由了,有很大一部分C/C++指针可以用的功能Java的引用不能实现,而这不能改变它仍然依赖于存储的具体实现的事实。
忽略掉写法上的差异,Java的引用在行为上可以被C++模拟出来(是不是依赖于具体实现另说);这方面的功能就只是个子集。
真要纯粹,就应该使用抽象上限制最严格的迭代器(看起来麻烦是另外一回事)——它可以明确表达纯粹的访问行为,而不管指的东西是什么。
>>但还c++的RAII以及析构的自动调用又是好东西。如果cx1能实现这个功能那就好了:struct超出作用域自动调用一个默认的函数,用户可重定义这个函数。
用户可重定义。赞扬。

论坛徽章:
0
发表于 2011-12-04 11:55 |显示全部楼层
方才翻刚出炉的 boost 1.48,发现多出了一个 boost::move 专门给老的 c++ 编译器用的
fallening 发表于 2011-12-03 21:49


看了下,限制还是挺多的……
要是我的话,照LZ现在的需求,直接auto_ptr凑合用了……

论坛徽章:
0
发表于 2011-12-04 12:00 |显示全部楼层
回复 13# bs

ISO C++所谓的deprecated是指在下一版标准出来之前还可以用……
而且要不能用了就算直接查找替换成unique_ptr看来问题也不大(比起引入shared_ptr万一被误用后替换不回去的情况)。

论坛徽章:
0
发表于 2011-12-04 16:15 |显示全部楼层
回复 16# 幻の上帝


    c1x有准备出这个特性的趋势么?或者gcc目前有支持这个的特性么?

论坛徽章:
0
发表于 2011-12-04 16:16 |显示全部楼层
回复 15# 幻の上帝


    看到这个我已经不知道该说什么好了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP