如果不抛出异常的话,影效率甚微,可以不考虑的。用try catch 应是好习惯,可以避免系统的崩溃。

解决方案 »

  1.   

    可用太多try...catch...的话,是会影响代码的阅读的,当代码起来越多的时候那影响可不小。
      

  2.   

    用try   catch 不仅仅是影响阅读,更主要的是影响程序的性能,占用资源很大
    在没有可能的异常抛出的时候不要加try   catch
    因为.net处理得时候,要为try  catch分配资源,然后运行里面的语句
      

  3.   

    多了会有影响的。
    有时是可以用if(){}else{}来判断的。
      

  4.   

    我觉得好习惯啊。
    特别在WEB应用中,系统容易崩溃就很容易受一攻击。
      

  5.   

    发时间的是catch部分,如果不是万不得已,最好不要用try catch。
      

  6.   

    我曾经遇到过,一个很简单的方法,但就是很慢,搞得莫名其妙,后来才查出来问题出在catch,因为抛异常再catch很发时间。
      

  7.   

    绝对是影响性能得,所以一般考虑再比较容易出问题得时候才用try catch
      

  8.   

    try catch的使用,现在已经形成一门专门的学问了,你去书店逛逛应该能找到一些有关这个主题的专业书.
      

  9.   

    凭经验尽量减少try..catch
    当然有些地方是没办法不过winform中出错没有捕获系统也不会崩溃的,倒是还是有错误提示是否继续还是推出.
      

  10.   

    我每个函数程序代码很少80多行吧。
    但比如说,有类型转换,我就加try了。
      

  11.   

    实际上,如果类型转换出错的话,应该报错的,如果斑竹不想报错,而作另外的处理的话,那就只有catch了。
      

  12.   

    实际上,如果类型转换出错的话,应该报错的,如果斑竹不想报错,而作另外的处理的话,那就只有catch了。
      

  13.   

    try..catch 有很多优点,而且如果产生异常,也需要catch来捕获啊
    所以我个人认为try..catch很有必要的哦,是个好习惯啊
      

  14.   

    根本无所谓的
    不过要注意的是
    不要把catch{}里面的代码作为程序的逻辑来用
    try{}部分几乎不花什么时间,而catch{}部分会用掉上百倍的时间关于异常处理,一般是按照在底层抛出异常,在上层处理异常
      

  15.   

    我一般用try{}catch(){}也就是调试的时候捕捉错误而用,方便使用;但是,有时候,用的恰当也很好的啊,特别是在捕捉一个空错误的时候,比如,在TreeView中的MouseDown事件中,要得到节点,你用了一个方法,但是,你要是没有点击在节点范围内,那么就会出现错误,你这是可以捕捉一个空异常啊..........反正我的意思是,要用的时候就用,不用的时候就不用贝,看你分析的结果了
      

  16.   

    显然影响效率的
    如果你的catch没有筛选那就更惨,它会阻塞所有的Exception
    你想,有些Exception根本就是无所谓的,或者你不Care的,它也会进入catch块里面进行判断,现在的CPU都是基于分支预测技术的。
    这样会大大影响效率。
      

  17.   

    个人看法
    1. try catch是个好习惯,他让编程人员关注于业务部分,不用考虑那各种各样的错误返回代码
    2. 效率问题,是会有影响,但只是在异常发生的时候体现明显,我想一个程序不可能总是在处理异常吧,所以效率不是主要问题
    3. 选择异常和返回的时机,返回值只与业务相关,除此以外,都用异常
    欢迎大家批评
      

  18.   

    代码安全我常用下列方法,而不是单一使用try catch
    1.参数检查
    2.返回值
    3.try catch
      

  19.   

    从安全性上看,我完全同意用
    但是效率上看是对整个系统有所影响的
    所以同意kuangren(J※今天逃课~『天若有情天亦老』) 的看法
      

  20.   

    我还是觉得try...catch应主要写在调试时,然后根据程序的编写进度,慢慢地减少其中的try...catch...数量,只留下一些难以确保运行结果的地方才用。
      

  21.   

    好习惯是教科书上讲的,呵呵,实际开发中不要太教条。真正好的习惯应该是综合权衡效率和健壮性。用这个肯定要耗费时间的,不耗费时间是假话。如果你仔细看微软的一些Demo,他们也不是到处都是try ...catch的。在一些无关重要的地方、不易出错的地方,当然不应该用错误处理语句;另一方面,程序员的工作目标之一不正应该是努力减少程序中不稳定的地方、减少容易出错的代码---也就是减少需要使用try...catch这样的可能性吗?
      

  22.   

    如何用好,也很伤脑筋啊,看来安全与效率不可兼得了,
    我还是比较喜欢用try-catch得,百密一疏。
      

  23.   

    用try-catch是比较慢的,你能转换成if else就转换成if else,或者用try catch finally也可以。
      

  24.   

    尤其在数据库的代码中,一定要用try-catch,
      

  25.   

    根据经验先判断异常啊
    不要动不动就try-catch
    try
    {
     2>1
    }
    。。
    这就不必了
      

  26.   

    我认为一些我们不可预知的错误,可以采用try...catch,如果我们可以预先知道的,多在程序里面做处理。
      比如,简单的值校验等,就不可以采用try...catch。
      如果是底层数据库访问,因为出现的有些异常我们是不可知的,需要捕捉异常,否则系统崩溃,比起系统缓慢是要糟糕的多。
      

  27.   

    会有效率影响,所以在对性能要求严格的地方,对可能发生异常的函数,先查msdn,找到触发异常的条件,用if()来避免异常,或者捕获相应的异常,不要只是一个try{}catch{}
      

  28.   

    一个好的程序,当然首先是安全实用的,在此前提下,还要做到程序的可读性强,作到程序的简洁。所以,没必要用try...catch的地方就没必要用。用多了不仅看起来觉得谨慎过分,而且在性能上也是会有一定的影响。
      

  29.   

    try catch是很费时间,
    因为每做一次,虚拟机都会进行压栈操作。
    所以,效率就会低很多,你们头说得没错。
      

  30.   

    各位说些具体的情况吧,简单的操作,谁会用try。
    比如说 i*j 操作,会有溢出的情况,虽然简单,还是需要try。