VisualStudio2010斷點調(diào)試方法_第1頁
VisualStudio2010斷點調(diào)試方法_第2頁
VisualStudio2010斷點調(diào)試方法_第3頁
VisualStudio2010斷點調(diào)試方法_第4頁
VisualStudio2010斷點調(diào)試方法_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、VisualStudio2010斷點調(diào)試技巧大全.net程序開發(fā)工具我都用vs(visual studio),開發(fā)過程中的跟蹤調(diào)試最常用的就是斷點跟蹤調(diào)試了,但是現(xiàn)在才發(fā)現(xiàn),用了這么多年vs斷點跟蹤調(diào)試是白用了啊。它居然還可以有這么多用法。設(shè)置斷點:在如下圖中的紅色圓點處設(shè)置斷點,紅色圓點表示已經(jīng)在這行設(shè)置斷點??旖萱IF9。啟動調(diào)試:按F5或者點擊左邊紅框中的按鈕。右邊框是開始執(zhí)行(不調(diào)試)Ctrl+F5。調(diào)試工具欄:下面是工具欄中對應(yīng)的名稱和快捷鍵。 在調(diào)試過程中F5是執(zhí)行到下一個斷點。F11是逐語句,在執(zhí)行到下圖中的斷點時,按F11會執(zhí)行到Fibonacci方法里面逐步記錄執(zhí)行過程。F10

2、是逐過程,與逐語句不同的是,在執(zhí)行到下圖中斷點時,再執(zhí)行會執(zhí)行斷點下面的語句,而不是去執(zhí)行語句中的方法。局部變量:在調(diào)試過程中可以查看局部變量窗口,如下圖里面會有變量的當(dāng)前狀態(tài)。如果找不到的話在數(shù)組的狀態(tài)表示如下圖:InteliTrace記錄每一步的調(diào)試狀態(tài)。條件中斷開發(fā)人員設(shè)置斷點,運行程序,利用不同的輸入觸發(fā)斷點,然后在斷點處手工檢查是否滿足某些特定的條件,從而決定是否繼續(xù)調(diào)查。如果當(dāng)前場景不是他們想要的,按F5繼續(xù)運行程序,嘗試別的輸入,手動重復(fù)剛才的過程。針對上述情況,Visual Studio提供了一個方便得多的功能“條件中斷”。只有當(dāng)程序滿足了開發(fā)人員預(yù)設(shè)的條件后,條件斷點才會被觸

3、發(fā),調(diào)試器中斷。這將避免頻繁地手工檢查/恢復(fù)程序運行,大量減少調(diào)試過程中的手工和煩瑣工作。如何設(shè)置條件斷點:設(shè)置條件斷點非常容易。在特定的行上,按F9設(shè)置斷點。然后右擊斷點編輯窗口左側(cè)的紅點,在上下文菜單上選擇“條件”。這時彈出一個對話框供你設(shè)置激活該斷點所需的條件。比如:我們希望只有當(dāng)x=5時,調(diào)試才中斷。我們可以寫出如下的表達(dá)式:現(xiàn)在我再運行這個程序按F5達(dá)到條件斷點,只有當(dāng)x等于5時,程序運行才會被中斷。對于其它條件下的x值,斷點將被跳過。記錄到達(dá)斷點次數(shù)有時你希望,只有當(dāng)?shù)贜次滿足條件的運行到達(dá)斷點時,才中斷程序運行。例如:當(dāng)?shù)谝淮蚊袛帱c??梢酝ㄟ^右擊斷點,然后在彈出菜單上選擇“命中

4、次數(shù)”菜單命令實現(xiàn)。這時系統(tǒng)彈出一個對話框,它允許你指定:(1)當(dāng)滿足條件,而且進(jìn)入斷點的累計次數(shù)等于N時,斷點命中一次。(2)當(dāng)滿足條件,而且進(jìn)入斷點的累計次數(shù)是N的倍數(shù)時,斷點命中一次。(3)當(dāng)滿足條件,而且進(jìn)入斷點的累計次數(shù)大于N時,每次命中斷點。注意:如果多個條件同時用的話,結(jié)果取交集。 斷點篩選器例如,在調(diào)試一個服務(wù)程序時在其內(nèi)部打上了斷點,由于這是一個公用的服務(wù)不希望其他訪問這個服務(wù)的程序被所設(shè)斷點調(diào)試干擾,怎么辦?斷點篩選器 就是限制只在某些進(jìn)程和線程中設(shè)置斷點。篩選器文本框中輸入以下一個或多個子句,可以使用&(AND)、|(OR)、!(NOT)和圓括號組合 這些子句描述應(yīng)在何處

5、設(shè)置斷點的表達(dá)式,或者清除該表達(dá)式以便在所有進(jìn)程和線程中設(shè)置斷點。比如,希望斷點只在被機器名為xye-PC的機器訪問時才觸 發(fā),我們可以右擊斷點進(jìn)行斷點篩選器設(shè)置。當(dāng)其他機器訪問程序的時候斷點不會觸發(fā),其他機器訪問時感覺不到斷點的存在。跟蹤點進(jìn)入斷點時的自定義操作許多人不知道“跟蹤點(TrackPoints)”這個調(diào)試功能?!案欬c“是種特殊的斷點,當(dāng)它被命中時,它會觸發(fā)一系列自定義操作。如果你想觀察程序的行為,而又不想中斷調(diào)試的時候,這個功能尤其有用。我將用一個簡單的控制臺程序來演示如何使用“跟蹤點”。如下是斐波那契數(shù)列的一個遞歸實現(xiàn):以上程序中,我們使用Console.WriteLine(

6、) 輸出針對特定輸入值生成的最終斐波那契數(shù)列。如果希望在調(diào)試器里觀察操作中每一次遞歸運算后的數(shù)列而又不實際中斷程序運行,該怎么辦呢?“跟蹤點”可以輕松實現(xiàn)。設(shè)置跟蹤點:你可以在特定的行上,按F9加跟蹤點。然后右擊斷點,在上下文菜單中選擇“命中條件”:在彈出對話框上,你可以設(shè)置命中該斷點時,所觸發(fā)的事件。在上面例子中,我們設(shè)定一旦命中斷點時就打印追蹤信息。注意,我們已經(jīng)把局部變量“x”的值,作為追蹤信息的一部分輸出。局部變量可以通過變 量名語法輸出。你還可以利用系統(tǒng)內(nèi)置的命令($CALLER, $CALLSTACK, $FUNCTION等等),在追蹤信息中輸出常用的調(diào)試值。在上例中,我們同時選中了底端的“continue execution“選項,這說明我們不希望程序中斷調(diào)試狀態(tài),而是繼續(xù)運行。唯一的不同是:每次斷點條件滿足時,我們的自定義追蹤信息都將被輸出?,F(xiàn)在當(dāng)我們運行程序時,會發(fā)現(xiàn)自定義追蹤信息自動顯示在Visual St

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論