C++中的异常处理完全是没用的垃圾
请问各位C++高手:
你们是否经常使用C++的异常处理(try,throw,catch)?大家觉得使用异常处理方不方便?反正我是从来没用过,因为我觉得异常处理是C++中的一项最没用的功能了。
下面我历数一下异常处理带来的种种害处:
第一条:异常处理机制简直就是一个毫无用处的东西。不用异常处理,同样能实现相应的功能,而且工作量绝不会比使用异常处理要多.
第二条:异常处理破坏了程序的结构和流程。甲函数调用乙函数,乙函数执行完后返回甲函数,继续运行,这是多么清析的流程啊。可是自从引入了这个该死的异常处理机制之后,一切全部乱套了。
第三条:异常处理只会带来更多的异常。考虑下面这个函数:
void aaa()
{
int * a;
a=new int;
bbb();
delete a;
}
如果在函数bbb中抛出了一个异常,则delete a这一句就不会被执行,于是就造成了内存的泄露。
第四条:为了处理这些该死的异常,编译器会为每一个函数加一些实现异常处理的代码,甚至会为一个作用块增加一大堆的代码,增加了代码的大小,减慢了运行的速度。而对于像我这种从来不使用异常处理的人来说,这些该死的代码简直就是一堆垃圾。
鉴于以上原因,我强烈反对在C++中引入异常处理机制。
以上仅是我本人对异常处理的看法,不知各位高手对此有何高见?请指教。
谢谢。