設(shè)置斷點(diǎn):在如下圖中的紅色圓點(diǎn)處設(shè)置斷點(diǎn),紅色圓點(diǎn)表示已經(jīng)在這行設(shè)置斷點(diǎn)。快捷鍵F9。
啟動(dòng)調(diào)試:按F5或者點(diǎn)擊左邊紅框中的按鈕。右邊框是開(kāi)始執(zhí)行(不調(diào)試)Ctrl+F5。
調(diào)試工具欄:下面是工具欄中對(duì)應(yīng)的名稱(chēng)和快捷鍵。
在調(diào)試過(guò)程中F5是執(zhí)行到下一個(gè)斷點(diǎn)。F11是逐語(yǔ)句,在執(zhí)行到下圖中的斷點(diǎn)時(shí),按F11會(huì)執(zhí)行到Fibonacci方法里面逐步記錄執(zhí)行過(guò)程。F10是逐過(guò)程,與逐語(yǔ)句不同的是,在執(zhí)行到下圖中斷點(diǎn)時(shí),再執(zhí)行會(huì)執(zhí)行斷點(diǎn)下面的語(yǔ)句,而不是去執(zhí)行語(yǔ)句中的方法。
局部變量:在調(diào)試過(guò)程中可以查看局部變量窗口,如下圖里面會(huì)有變量的當(dāng)前狀態(tài)。如果找不到的話在
數(shù)組的狀態(tài)表示如下圖:
InteliTrace記錄每一步的調(diào)試狀態(tài)。
條件中斷
開(kāi)發(fā)人員設(shè)置斷點(diǎn),運(yùn)行程序,利用不同的輸入觸發(fā)斷點(diǎn),然后在斷點(diǎn)處手工檢查是否滿(mǎn)足某些特定的條件,從而決定是否繼續(xù)調(diào)查。如果當(dāng)前場(chǎng)景不是他們想要的,按F5繼續(xù)運(yùn)行程序,嘗試別的輸入,手動(dòng)重復(fù)剛才的過(guò)程。
針對(duì)上述情況,Visual Studio提供了一個(gè)方便得多的功能——“條件中斷”。只有當(dāng)程序滿(mǎn)足了開(kāi)發(fā)人員預(yù)設(shè)的條件后,條件斷點(diǎn)才會(huì)被觸發(fā),調(diào)試器中斷。這將避免頻繁地手工檢查/恢復(fù)程序運(yùn)行,大量減少調(diào)試過(guò)程中的手工和煩瑣工作。
如何設(shè)置條件斷點(diǎn):
設(shè)置條件斷點(diǎn)非常容易。在特定的行上,按F9設(shè)置斷點(diǎn)。
然后右擊斷點(diǎn)–編輯窗口左側(cè)的紅點(diǎn),在上下文菜單上選擇“條件”。
這時(shí)彈出一個(gè)對(duì)話框供你設(shè)置激活該斷點(diǎn)所需的條件。比如:我們希望只有當(dāng)x==5時(shí),調(diào)試才中斷。我們可以寫(xiě)出如下的表達(dá)式:
現(xiàn)在我再運(yùn)行這個(gè)程序按F5達(dá)到條件斷點(diǎn),只有當(dāng)x等于5時(shí),程序運(yùn)行才會(huì)被中斷。對(duì)于其它條件下的x值,斷點(diǎn)將被跳過(guò)。
記錄到達(dá)斷點(diǎn)次數(shù)
有時(shí)你希望,只有當(dāng)?shù)贜次滿(mǎn)足條件的運(yùn)行到達(dá)斷點(diǎn)時(shí),才中斷程序運(yùn)行。例如:當(dāng)?shù)谝淮蚊袛帱c(diǎn)。可以通過(guò)右擊斷點(diǎn),然后在彈出菜單上選擇“命中次數(shù)”菜單命令實(shí)現(xiàn)。
新聞熱點(diǎn)
疑難解答
圖片精選