免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12345下一页
最近访问板块 发新帖
查看: 12914 | 回复: 42
打印 上一主题 下一主题

[C++] 工作中你是否使用C++异常?  关闭 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-08-20 10:36 |只看该作者 |倒序浏览
工作了项目也做了好几个,但是就目前看过的写过的代码来说,我见过的C++代码基本都没有什么写try catch的,除了我工作的上一家公司,有一个VC写的跑在WINDOWS下的CAD图片管理软件里大量用到了try catch以外,其它的软件都没有使用try catch。

我写的代码统统没有try catch,原因就是,我对C++的exception不熟悉,不敢用,用上了我也不觉得能带来多大的方便。最近在看《C++变成死相》,一开头就讲的是异常,我看了一下,里面的道道挺多的,很多弯弯绕。一个初学者要把这个异常给用好了还真的是非常之难,完全没有判断函数返回值那么简单明了。

你们的项目都使用异常了吗?了解一下大体情况,在这个公司呆两年了。不太清楚外面的情况了。

论坛徽章:
0
2 [报告]
发表于 2009-08-20 10:37 |只看该作者
没有意义,别挖坑了。

论坛徽章:
0
3 [报告]
发表于 2009-08-20 10:42 |只看该作者
比如yard利用异常,作为一种便捷的中途退出机制。
话说回来,异常不就是超级return吗?

论坛徽章:
0
4 [报告]
发表于 2009-08-20 10:43 |只看该作者

回复 #3 群雄逐鹿 的帖子

return到上上上上一个调用函数

论坛徽章:
0
5 [报告]
发表于 2009-08-20 10:48 |只看该作者
厄……

曾经一个小题目,在二分图染色中使用过异常,就是遇到冲突的时候 throw 一个 NoSolution 。发现效率其实不是很低,至少没有超时……

[ 本帖最后由 xpycc 于 2009-8-20 11:08 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2009-08-20 10:49 |只看该作者
看来这玩意儿用的人还是很少

论坛徽章:
0
7 [报告]
发表于 2009-08-20 11:02 |只看该作者
用不用异常无所谓,关键是项目当中统一的出错处理方式,别一会异常,一会if...else或者goto

论坛徽章:
0
8 [报告]
发表于 2009-08-20 11:04 |只看该作者

回复 #1 我learnc 的帖子

说下,我们项目就用到这个,好处太明显。
好多模块都是不同的人做的,经常能try到错误。然后让相应的负责人去找。
因为这些错都是异常错误,本人都不会注意到的错误,这时候就需要系统帮你捕捉。
try就是一个好办法。知道是哪个调用出错了。
当然try也有好多它无能为力的错误,他没法捕捉,像出现core的错误。
这时候就用core来查错。
不论try,还是core,他们都是依靠系统来捕捉到错误。
因为这些错误是在你意料之外的。
以上仅个人观点。
我喜欢try和core。

论坛徽章:
24
狮子座
日期:2013-12-31 10:48:0015-16赛季CBA联赛之吉林
日期:2016-04-18 14:43:1015-16赛季CBA联赛之北控
日期:2016-05-18 15:01:4415-16赛季CBA联赛之上海
日期:2016-06-22 18:00:1315-16赛季CBA联赛之八一
日期:2016-06-25 11:02:2215-16赛季CBA联赛之佛山
日期:2016-08-17 22:48:2615-16赛季CBA联赛之福建
日期:2016-12-27 22:39:272016科比退役纪念章
日期:2017-02-08 23:49:4315-16赛季CBA联赛之八一
日期:2017-02-16 01:05:3415-16赛季CBA联赛之山东
日期:2017-02-22 15:34:5615-16赛季CBA联赛之上海
日期:2017-11-25 16:17:5015-16赛季CBA联赛之四川
日期:2016-01-17 18:38:37
9 [报告]
发表于 2009-08-20 11:29 |只看该作者
原帖由 我learnc 于 2009-8-20 10:36 发表
工作了项目也做了好几个,但是就目前看过的写过的代码来说,我见过的C++代码基本都没有什么写try catch的,除了我工作的上一家公司,有一个VC写的跑在WINDOWS下的CAD图片管理软件里大量用到了try catch以外,其 ...



应该是错误用异常,状态用返回值。

比如,要在数据库中查找信息,没找到用返回值,数据库连不上用异常。

论坛徽章:
0
10 [报告]
发表于 2009-08-20 12:27 |只看该作者
能用的统统都用上,你要是不继承个七八层都不好意思跟人打招呼
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP