none
如何在Try Catch之後回到block繼續執行? RRS feed

  • 問題

  • 小弟有個程式想要抓住四個例外並且記數,但是往往只要發生一次例外之後就會跳到catch就結束了,不知道該怎麼改進會比較好

    程式碼如下:

          int ExceptionTimes = 0;
          try
          {
             TestMethod(20, 20, 4, 20);
             TestMethod(20, 4, 20, 4);
             TestMethod(20, 20, 151, 20);
             TestMethod(20, 20, 20, 151);
          }
          catch (System.ArgumentException)
          {
            ExceptionTimes++;
          }
          Assert.AreEqual(4, ExceptionTimes);

     


    請高手們給我一點指點吧 我一定會虛心受教的 ~"~
    2011年8月16日 上午 06:01

解答

  • 那把

       try
       {
        TestMethod(20, 20, 20, 151);
       }
       catch (System.ArgumentException)
       {
        ExceptionTimes++;
       }

    包成一個方法去傳參數,並取得累計的數字呢?


    Shadowと愉快なコード達
    • 已標示為解答 Ivy_coder 2011年8月16日 上午 09:37
    2011年8月16日 上午 06:12
  • 感覺用Return 值來判斷會不會比較OK呀!

    成功給1, 失敗給0來加總比較!


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    • 已標示為解答 Ivy_coder 2011年8月16日 上午 09:37
    2011年8月16日 上午 09:27

所有回覆

  •   int ExceptionTimes = 0;
       try
       {
         TestMethod(20, 20, 4, 20);
           }
       catch (System.ArgumentException)
       {
        ExceptionTimes++;
       }
    
       try
       {
            TestMethod(20, 4, 20, 4);
       }
       catch (System.ArgumentException)
       {
        ExceptionTimes++;
       }
    
       try
       {
         TestMethod(20, 20, 151, 20);
        }
       catch (System.ArgumentException)
       {
        ExceptionTimes++;
       }
    
       try
       {
        TestMethod(20, 20, 20, 151);
       }
       catch (System.ArgumentException)
       {
        ExceptionTimes++;
       }
    
    Assert.AreEqual(4, ExceptionTimes);
    


    這樣呢?

     


    Shadowと愉快なコード達
    2011年8月16日 上午 06:07
  • 謝謝您的回覆,其實這樣其實就是我正在做的,但是我覺得好像重複的程式碼太多,不知道有沒有簡化的寫法?


    請高手們給我一點指點吧 我一定會虛心受教的 ~"~
    2011年8月16日 上午 06:09
  • 那把

       try
       {
        TestMethod(20, 20, 20, 151);
       }
       catch (System.ArgumentException)
       {
        ExceptionTimes++;
       }

    包成一個方法去傳參數,並取得累計的數字呢?


    Shadowと愉快なコード達
    • 已標示為解答 Ivy_coder 2011年8月16日 上午 09:37
    2011年8月16日 上午 06:12
  • 感覺用Return 值來判斷會不會比較OK呀!

    成功給1, 失敗給0來加總比較!


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    • 已標示為解答 Ivy_coder 2011年8月16日 上午 09:37
    2011年8月16日 上午 09:27