JUST DO IT ~

我只想当个程序员

[网络异常收集贴] c++ 怎么看c语言的异常处理


为什么我希望用C而不是C++来实现ZeroMQ

http://blog.jobbole.com/19647/
C++的异常处理机制却无法满足这个要求。C++的异常机制对于确保程序不会失败是非常有效的——只要将主函数包装在try/catch块中,然后你就可以在一个单独的位置处理所有的错误。然而,当你的目标是确保没有未定义行为发生时,噩梦就产生了。C++中引发异常和处理异常是松耦合的,这使得在C++中避免错误是十分容易的,但却使得保证程序永远不会出现未定义行为变得基本不可能。

之前看过一篇文章,说是网络编程C 语言异常


JAVA异常处理

http://blog.jobbole.com/19647/

有一种说法是, java的异常处理方式,拼命的补漏洞,程序运行时出现问题要么位置,不如c语言通过状态来处理方式的明晰,
操作系统,网络都用异常处理方式。
java的异常会污染代码底层的异常,如果不及时处理掉抛出,会造成系统的总成部分来分心细节。如果是告诉高层代码,我底层出现问题,
上层知道一个大概就可以了。就可以决策,具体出问题的模块才最清楚我应该怎么处理。
当然,java提供了底层处理的机制。
另外一个被人吐槽,异常不如处理错误返回码来的清晰断定问题根源。

抛出的异常会给代码,扰乱程序的正常流程。
另外一个槽点,异常会使得堆栈退出的流程,造成很多资源来不及息勾或者是考虑资源释放不足。

c#改进的一种方式,想处理再处理,不污染接口。





 








 








posted on 2015-03-15 13:07 小高 阅读(250) 评论(0)  编辑  收藏 所属分类: Exception 异常处理C


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2015年3月>
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

统计

常用链接

留言簿(3)

随笔分类(352)

收藏夹(19)

关注的blog

手册

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜