日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

11个强大的Visual Studio调试小技巧

發(fā)布時(shí)間:2025/3/21 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 11个强大的Visual Studio调试小技巧 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

伯樂在線注:我們?cè)?#64;程序員的那些事?微博上推薦了英文原文,感謝@halftone_被禁用了的熱心翻譯。

簡(jiǎn)介

調(diào)試是軟件開發(fā)周期中很重要的一部分。它具有挑戰(zhàn)性,同時(shí)也很讓人疑惑和煩惱??偟膩碚f,對(duì)于稍大一點(diǎn)的程序,調(diào)試是不可避免的。最近幾年,調(diào)試工具的發(fā)展讓很多調(diào)試任務(wù)變的越來越簡(jiǎn)單和省時(shí)。

這篇文章總結(jié)了可能節(jié)省你大量時(shí)間的11個(gè)Visual studio的調(diào)試技巧和方法。

1 懸停鼠標(biāo)查看表達(dá)式值

調(diào)試是很有挑戰(zhàn)性的。比如在函數(shù)內(nèi)逐步運(yùn)行可以看出哪里出錯(cuò),查看堆棧信息可以知道函數(shù)被誰調(diào)用等等……但是無論哪種情況下,查看表達(dá)式和局部變量的值都是很麻煩的(把表達(dá)式和局部變量放到watch窗口里)。一種更簡(jiǎn)單的方法,把鼠標(biāo)停在所需查看的數(shù)據(jù)上。如果是類或結(jié)構(gòu),那么點(diǎn)擊展開可以很方便快速地查看其字段。

?

2 在運(yùn)行過程中改變變量值

調(diào)試器不僅僅是分析程序崩潰和詭異行為的工具,還可以通過逐步調(diào)試檢查數(shù)據(jù)和行為是否符合程序預(yù)期的方法解決許多bug。有時(shí),你會(huì)想是否設(shè)置某些條件為真,程序就能正確運(yùn)行了。其實(shí)你只要把鼠標(biāo)移動(dòng)到變量上,雙擊值,然后輸入你需要的值。這樣就不需要修改代碼,重啟程序了。

?

3 設(shè)置下一個(gè)運(yùn)行位置

一個(gè)典型的調(diào)試案例是我們經(jīng)常會(huì)用逐步調(diào)試的方法去分析為什么函數(shù)出錯(cuò)了。這時(shí)你遇到這個(gè)函數(shù)調(diào)用其他函數(shù)返回錯(cuò)誤,而這個(gè)錯(cuò)誤不是你想要的,你該怎么辦?重啟調(diào)試器?這里有個(gè)更好的方法,直接把黃色的運(yùn)行位置箭頭拖到你想要的運(yùn)行位置。其實(shí)就是跳過中間運(yùn)行代碼,直接到想要的位置。很簡(jiǎn)單吧。

?

4 編輯然后繼續(xù)運(yùn)行

在運(yùn)行一個(gè)很復(fù)雜的程序和插件時(shí),發(fā)現(xiàn)一個(gè)錯(cuò)誤,但是不想浪費(fèi)時(shí)間去重編譯重啟動(dòng)程序。很簡(jiǎn)單,只要在這個(gè)位置修改這個(gè)bug,然后繼續(xù)調(diào)試。Visual studio會(huì)修改這個(gè)程序,使得你可以繼續(xù)調(diào)試而不需要重啟程序。

值得注意的是“編輯然后繼續(xù)運(yùn)行”這個(gè)功能有幾個(gè)限制。一,它不能在64位代碼上使用。如果想使用這個(gè)功能,到項(xiàng)目設(shè)置里的編譯選項(xiàng),選擇”x86”作為目標(biāo)平臺(tái)。不要擔(dān)心,這目標(biāo)平臺(tái)在reslease配置是和”debug是分離的,也就是說依然是”Any CPU”的設(shè)置。二,“編輯然后繼續(xù)運(yùn)行”這個(gè)功能僅適用于一個(gè)函數(shù)內(nèi)部改變。如果你想要改變這個(gè)函數(shù)的聲明或者增加新的方法,你只能選擇重啟程序,或者不做任何改變繼續(xù)。如果修改的方法中包含lambda表達(dá)式,則意味著修改了編譯器自動(dòng)生成的委托類型,這樣會(huì)導(dǎo)致編譯器停止運(yùn)行。

?

5 一個(gè)方便的查看窗口

大部分現(xiàn)代的調(diào)試器都有查看窗口。但是,visual studio的查看窗口使用特別簡(jiǎn)單,你能很方便的增加和刪除變量。只要在窗口里點(diǎn)擊空白行,輸入表達(dá)式然后按enter鍵?;蛘唿c(diǎn)擊表達(dá)式,按delete鍵刪除不需要的表達(dá)式。

在調(diào)試窗口不僅僅可以查看普通的變量值,甚至可以輸入$handles去追蹤打開的句柄數(shù)量,$err去查看函數(shù)的錯(cuò)誤代碼(然后使用 Tools->Error 查看錯(cuò)誤代碼的描述)或者輸入 @eax(在64位下是@rax )查看包含函數(shù)返回值的寄存器值。

?

6 注釋反匯編

使用內(nèi)部的反匯編功能使得優(yōu)化局部代碼更加簡(jiǎn)單。Visual studio可以在你的每一行代碼下顯示匯編指令,并且可以逐步調(diào)試匯編代碼,也可以在任意位置設(shè)置斷點(diǎn)。查看和修改匯編代碼類似于c++。

?

7 堆棧信息的線程窗口

調(diào)試多線程代碼是很痛苦的?;蛟S也是有趣的。這取決于你的調(diào)試器。Visual studio 一個(gè)很贊的功能就是在線程窗口查看線程的堆棧信息。你能很方便的直接看到所有線程以及他們的堆棧信息。

?

8 條件斷點(diǎn)

如果你想重現(xiàn)一個(gè)小概率事件,但是斷點(diǎn)在大量不需要的條件下也會(huì)觸發(fā)。你可以很簡(jiǎn)單的設(shè)置條件斷點(diǎn)。在斷點(diǎn)窗口設(shè)置該斷點(diǎn)條件,Visual studio 會(huì)自動(dòng)忽略不符合條件的斷點(diǎn)。

?

9 內(nèi)存窗口

一些bug是由錯(cuò)誤的結(jié)構(gòu)定義、缺少對(duì)齊屬性等原因引起的。查看每行內(nèi)存的內(nèi)容很容易定位和解決這些bug. Visual studio 的內(nèi)存窗口可以把數(shù)據(jù)翻譯成8/16/32/64-bit數(shù)字或者浮點(diǎn)數(shù)。你可以在編輯窗口直接改變數(shù)值。

?

10 跳轉(zhuǎn)到定義

如果你在解決別人寫的代碼一個(gè)bug,會(huì)遇到“這個(gè)類型是什么”“這個(gè)函數(shù)做什么的”之類的問題,你可以使用visual studio的跳轉(zhuǎn)到定義的命令來查看類型或函數(shù)的定義。

?

11 命令窗口

這個(gè)小技巧是由chaau建議的,它能節(jié)省你大量的時(shí)間。Visual studio支持一個(gè)命令窗口,你可以通過菜單View->Other Windows->Command Window 打開。你可以在窗口里輸入不同命令使調(diào)試自動(dòng)化。比如,可以通過很簡(jiǎn)單的命令去的測(cè)試MFC的COleDateTime變量。

Shell

?

1

? dt.Format("%Y-%m-%d %H:%M:%S")

?

英文原文:Ivan Shcherbakov,編譯:@halftone_被禁用了

譯文鏈接:http://blog.jobbole.com/33865/

from:http://blog.jobbole.com/33865/?

總結(jié)

以上是生活随笔為你收集整理的11个强大的Visual Studio调试小技巧的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 岛国av片 | 中文字幕avav| 老汉av在线| 日韩精品欧美激情 | 亚洲最新在线 | 成人久久久久久 | 99热这里只有精品9 日韩综合在线 | 日本免费一二区 | 波多野结衣欲乱上班族 | 高清黄色一级片 | 青青草国产在线播放 | 久久久剧场 | 五月激情视频 | 91蜜桃传媒精品久久久一区二区 | 日韩成人一级 | 欧美性大战久久久久久久 | 亚洲一区二区视频在线观看 | 亚洲欧洲色图 | 东方av在线免费观看 | 日本va欧美va国产激情 | 在线免费观看国产精品 | 日韩精品在线观看一区 | 嫩草视频网站 | 一级片日韩 | 国产最新av | 国产又色又爽无遮挡免费动态图 | 欧美 日韩 国产 成人 | 一本一道久久a久久精品综合 | 欧美手机在线视频 | 一本色道久久综合狠狠躁的推荐 | 粉嫩av一区二区三区天美传媒 | www.色就是色| 日韩在线一区二区三区 | 婷婷综合影院 | 久久77| 日本高潮网站 | 亚洲天堂2021av | 欧美日本黄色 | 久久久久久伦理 | 天天天天天天干 | 国产精品福利在线 | 伊人涩涩 | 亚洲自拍图片 | 色综合久久天天综合网 | youjizz韩国 | 亚洲香蕉一区 | 国产毛片自拍 | 狠狠影院| 欧美视频一区二区三区四区在线观看 | 青青国产精品视频 | 色www| 人人免费操 | 国产精品九九 | 人妻丰满熟妇av无码区不卡 | 色窝窝无码一区二区三区 | 桃色视频网站 | 91福利片| 亚洲国产私拍精品国模在线观看 | 日本大奶子视频 | 久久人人澡 | 伊人久久大香线蕉av一区 | 日韩免费视频网站 | 丁香五色月 | 色播亚洲| 深田咏美中文字幕 | 日韩黄色一级视频 | 亚洲免费av片 | 成人激情自拍 | 夜夜摸夜夜爽 | 日批网站在线观看 | 国产精品国产三级国产专区53 | 亚洲欧美综合一区二区 | 欧美v亚洲 | 夜夜嗨一区二区 | 欧美一级免费观看 | 一本色道久久亚洲综合精品蜜桃 | 极品美女高潮出白浆 | 一级做a爱片性色毛片 | 亚洲色偷偷综合亚洲av伊人 | 开心激情久久 | 日韩黄色高清视频 | 中文字幕 自拍 | 青青草国产精品视频 | 男人天堂你懂的 | 欧美成人午夜77777 | 天天干天天爱天天操 | 99久久久久久久久久 | 浪潮av网站| 每日av在线| 精品人妻一区二区三区久久夜夜嗨 | 国产三级自拍视频 | 中文字幕影片免费在线观看 | 日本美女一区二区 | 成人免费直播 | 成人国产a| 精品一区二区三区四 | 国产精品看片 | 18xxxx日本 | 国产h在线 |