日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

加了try-catch也能自动定位到异常代码[VS Tips]

發布時間:2025/7/25 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 加了try-catch也能自动定位到异常代码[VS Tips] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文來自Kevin Yang博客 作者:Kevin Yang

Visual Studio的調試功能非常強大。當異常發生的時候,能夠自動定位到異常發生的地方。但是如果你在代碼外層顯式的加上了Try-Catch異常捕獲的時候,默認情況下,Visual Studio會直接跳到異常處理代碼塊,而不是出現異常的代碼行。

namespace BreakOnException{
class Program
{
static void Main(string[] args)
{
try
{
Program p = null;
Console.WriteLine(p.GetHashCode());
}
catch (System.Exception ex)
{
}
}
}}

上面的代碼會拋出經典的NullReferrenceException。但是當你在調試狀態下運行時,Visual Studio會將代碼停在catch這一行,而不是Console.WriteLine這一行。

如果代碼簡單那倒無所謂,但是假想我們的代碼是經過層層的函數調用,最外層卻加了這么個Try-Catch,那么異常函數調用內拋出了異常,我們也很難定位到異常出錯的代碼(StackTrace也只能定位哪一個函數調用出錯了)。

這個行為可以通過Debug菜單中的Exception….菜單進行設置。

打開此菜單,在CLR異常的Thrown列打上勾,那么以后遇到CLR的異常就不再是定位到用戶處理代碼了,而是直接停在拋出異常的代碼上。這樣可以大大方便我們調試程序的Bug。

轉載于:https://www.cnblogs.com/Top1/archive/2010/08/18/1802592.html

總結

以上是生活随笔為你收集整理的加了try-catch也能自动定位到异常代码[VS Tips]的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。