• <bdo id="qgeso"></bdo>
        • <strike id="qgeso"></strike>
        • <sup id="qgeso"></sup><center id="qgeso"></center>
        • <input id="qgeso"></input>

          vs2010斷點調試詳細教程

          首頁 > IT > > 正文

          日期:2022-04-02 13:58:36    來源:腳本之家    

          設置斷點:在如下圖中的紅色圓點處設置斷點,紅色圓點表示已經在這行設置斷點。快捷鍵F9。

          啟動調試:按F5或者點擊左邊紅框中的按鈕。右邊框是開始執行(不調試)Ctrl+F5。

          調試工具欄:下面是工具欄中對應的名稱和快捷鍵。

          在調試過程中F5是執行到下一個斷點。F11是逐語句,在執行到下圖中的斷點時,按F11會執行到Fibonacci方法里面逐步記錄執行過程。F10是逐過程,與逐語句不同的是,在執行到下圖中斷點時,再執行會執行斷點下面的語句,而不是去執行語句中的方法。

          局部變量:在調試過程中可以查看局部變量窗口,如下圖里面會有變量的當前狀態。如果找不到的話在

          數組的狀態表示如下圖:

          InteliTrace記錄每一步的調試狀態。

          條件中斷

          開發人員設置斷點,運行程序,利用不同的輸入觸發斷點,然后在斷點處手工檢查是否滿足某些特定的條件,從而決定是否繼續調查。如果當前場景不是他們想要的,按F5繼續運行程序,嘗試別的輸入,手動重復剛才的過程。

          針對上述情況,Visual Studio提供了一個方便得多的功能——“條件中斷”。只有當程序滿足了開發人員預設的條件后,條件斷點才會被觸發,調試器中斷。這將避免頻繁地手工檢查/恢復程序運行,大量減少調試過程中的手工和煩瑣工作。

          如何設置條件斷點:

          設置條件斷點非常容易。在特定的行上,按F9設置斷點。

          然后右擊斷點–編輯窗口左側的紅點,在上下文菜單上選擇“條件”。

          這時彈出一個對話框供你設置激活該斷點所需的條件。比如:我們希望只有當x==5時,調試才中斷。我們可以寫出如下的表達式:

          現在我再運行這個程序按F5達到條件斷點,只有當x等于5時,程序運行才會被中斷。對于其它條件下的x值,斷點將被跳過。

          記錄到達斷點次數

          有時你希望,只有當第N次滿足條件的運行到達斷點時,才中斷程序運行。例如:當第一次命中斷點。可以通過右擊斷點,然后在彈出菜單上選擇“命中次數”菜單命令實現。

          這時系統彈出一個對話框,它允許你指定:(1)當滿足條件,而且進入斷點的累計次數等于N時,斷點命中一次。(2)當滿足條件,而且進入斷點的累計次數是N的倍數時,斷點命中一次。(3)當滿足條件,而且進入斷點的累計次數大于N時,每次命中斷點。

          注意:如果多個條件同時用的話,結果取交集。

          斷點篩選器

          例如,在調試一個服務程序時在其內部打上了斷點,由于這是一個公用的服務不希望其他訪問這個服務的程序被所設斷點調試干擾,怎么辦?斷點篩選器就是限制只在某些進程和線程中設置斷點。篩選器文本框中輸入以下一個或多個子句,可以使用&(AND)、||(OR)、!(NOT)和圓括號組合這些子句描述應在何處設置斷點的表達式,或者清除該表達式以便在所有進程和線程中設置斷點。比如,希望斷點只在被機器名為xye-PC的機器訪問時才觸發,我們可以右擊斷點進行斷點篩選器設置。當其他機器訪問程序的時候斷點不會觸發,其他機器訪問時感覺不到斷點的存在。

          跟蹤點進入斷點時的自定義操作

          許多人不知道“跟蹤點(TrackPoints)”這個調試功能。“跟蹤點“是種特殊的斷點,當它被命中時,它會觸發一系列自定義操作。如果你想觀察程序的行為,而又不想中斷調試的時候,這個功能尤其有用。

          我將用一個簡單的控制臺程序來演示如何使用“跟蹤點”。如下是斐波那契數列的一個遞歸實現:

          以上程序中,我們使用Console.WriteLine() 輸出針對特定輸入值生成的最終斐波那契數列。如果希望在調試器里觀察操作中每一次遞歸運算后的數列而又不實際中斷程序運行,該怎么辦呢?“跟蹤點”可以輕松實現。

          設置跟蹤點:

          你可以在特定的行上,按F9加跟蹤點。然后右擊斷點,在上下文菜單中選擇“命中條件”:

          在彈出對話框上,你可以設置命中該斷點時,所觸發的事件。

          在上面例子中,我們設定一旦命中斷點時就打印追蹤信息。注意,我們已經把局部變量“x”的值,作為追蹤信息的一部分輸出。局部變量可以通過{變 量名}語法輸出。你還可以利用系統內置的命令($CALLER, $CALLSTACK, $FUNCTION等等),在追蹤信息中輸出常用的調試值。

          在上例中,我們同時選中了底端的“continue execution“選項,這說明我們不希望程序中斷調試狀態,而是繼續運行。唯一的不同是:每次斷點條件滿足時,我們的自定義追蹤信息都將被輸出。

          現在當我們運行程序時,會發現自定義追蹤信息自動顯示在Visual Studio的“輸出“窗口里。這讓我們很容易看到程序的遞歸調用過程:

          你也可以選擇往應用程序中添加一個自定義追蹤信息的監聽器。這時追蹤點的輸出信息將通過它輸出,而不是Visual Studio的“輸出“窗口。

          關鍵詞: vs2010 斷點調試

          下一篇:人人影視正式回歸 號稱是中國最大的美劇社區 附網站地址
          上一篇:如何制作windows服務安裝包? 服務安裝包的制作過程

          科技

           
          国产三级日本三级日产三级66,五月天激情婷婷大综合,996久久国产精品线观看,久久精品人人做人人爽97
          • <bdo id="qgeso"></bdo>
              • <strike id="qgeso"></strike>
              • <sup id="qgeso"></sup><center id="qgeso"></center>
              • <input id="qgeso"></input>
                主站蜘蛛池模板: 中文字幕在线观看一区二区三区| 又大又湿又紧又爽a视频| 冲田杏梨AV一区二区三区| 免费无码又爽又黄又刺激网站 | 美女扒开尿口直播| 日本二区免费一片黄2019| 国产国产人免费视频成69大陆| 免费成人在线电影| 久久亚洲私人国产精品va| 91精品观看91久久久久久| 特级毛片www| 成人午夜在线视频| 国产成人AV三级在线观看按摩| 久久精品无码一区二区三区| 999无色码中文字幕| 综合一区自拍亚洲综合图区| 成人免费漫画在线播放| 国产免费av片在线播放| 久久久久久亚洲av无码专区| 亚洲图片欧美另类| 欧美黑人巨大3dvideo| 嫩草伊人久久精品少妇av| 国产亚洲人成网站在线观看| 亚洲不卡av不卡一区二区| 99久久精品免费观看国产| 精品久久久久久中文字幕一区| 夭天干天天做天天免费看| 亚洲精品高清国产一久久| **网站欧美大片在线观看| 最新欧洲大片免费在线| 国产精品香蕉在线一区| 亚洲中文字幕无码久久| 高清一本之道加勒比在线| 日韩精品久久久久久久电影| 国产精品入口麻豆免费观看| 亚洲爆乳无码专区www| 男女无遮挡动态图| 日本护士69xxxx免费| 国产成人精选视频69堂| 久久99精品国产麻豆宅宅| 精品人无码一区二区三区|