尋找錯誤:Visual Basic 偵錯簡介

更新:2007 年 11 月

在本課程中,您將學習透過偵錯,修正程式錯誤。

不管您在設計程式或撰寫程式碼時有多麼小心,都會發生錯誤。有時錯誤甚至會讓程式無法啟動、有時會導致程式停止執行或「損毀」,而有些時候程式可能會執行,但是不會達到預期的結果。

當然,真的發生錯誤時,您會想找出錯誤並加以修正。程式中的錯誤通常都稱為「錯誤」(Bug),尋找錯誤並加以修正的過程就稱為「偵錯」(Debugging)。

偵錯的過程是「反覆的」(Iterative),也就是說,您會不斷地重複。一般來說,您會撰寫一些程式碼,執行程式一直到發生錯誤、找出錯誤、加以修正,然後再次執行程式。

大部分情況下,您不需要停止程式就能進行修正。您可以在發生錯誤之處修正程式碼,然後讓程式從停頓處繼續執行,這種過程稱為「編輯後繼續」(Edit and Continue)。

偵錯是在 Visual Basic IDE (整合式開發環境) 中完成的;此環境中包含幾個特殊的命令和視窗,可協助您尋找錯誤。您將在以下課程中,更深入學習這些作業。

試試看!

注意事項:

這個範例會包含例外狀況。例外狀況是指,當程式發現發生錯誤時所建立 (並擲回) 的物件。根據發生的錯誤類型而定,會建立不同類型的例外狀況。在預設使用者設定下,如果執行 Visual Basic 程式時發生例外狀況,就會出現對話方塊說明錯誤並協助您修正錯誤。

若要使用編輯後繼續

  1. 在 [檔案] 功能表上,選取 [新增專案]。

  2. 在 [新增專案] 對話方塊的 [範本] 窗格中,按一下 [Windows 應用程式]。

  3. 在 [名稱] 方塊中,輸入 Edit,再按 [確定]。

    會開啟新的 Windows Form 專案。

  4. 按兩下這份表單,開啟 [程式碼編輯器]。

  5. 在 Form_Load 事件處理常式中加入以下程式碼。

    Dim number As Integer = 1
    Dim numbers As String = ""
    MsgBox(numbers + 1)
    
  6. 請按 F5 執行程式。此時程式會停止並顯示例外狀況對話方塊,並說明「InvalidCastException 未處理」訊息。

    例外狀況 (Exception) 發生的原因在於:程式碼中有打字錯誤。使用的變數錯誤:應該是 number、Integer 變數,而不是 numbers,那是一個 String 變數。

    請注意,程式仍然會執行,只是在偵錯「中斷」模式下執行而已。您可以使用「編輯後繼續」修正錯誤,不需要停止程式並重新執行進行檢查。

  7. 在 [程式碼編輯器] 中,將 numbers + 1 變更為 number + 1。

  8. 按 F5 繼續,訊息方塊隨即出現,並顯示數字 2。

後續步驟

在本課程中,您已經學到如何偵錯,以及如何修正錯誤並繼續執行程式。在下一個課程中,您將學習不同類型的錯誤。

下一個課程:了解錯誤:三種程式設計錯誤

請參閱

工作

發生錯誤時要執行的動作:處理錯誤

其他資源

何處發生錯誤?透過偵錯尋找和修正錯誤

建立程式的視覺外觀:Windows Form 簡介

Visual Basic 導覽