Visual Studio 2008 每日提示(三十一)
本篇包括tip311-tip320
http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-31.html
#311、按Shift+F11跳出函數
原文鏈接:You can press Shift+F11 to step out of a function
操作步驟:
在調試狀態,斷點停留在一個函數的內部
可以按Shift+F11從函數的任何位置跳出函數。
評論:用Shift+F11跳出函數讓我們直之關注需要了解的函數部分,對于不想知道的部分直接跳出。
http://www.watch-life.net/visual-studio/visual-studio-2008-tip-day-31.html
#312、在調試器里沒有‘繼續’命令
原文鏈接:There’s no command for Continuing the debugger
操作步驟:
注意啟動圖標的提示的變化,在"調試.啟動"命令是是“啟動調試”
繼續調試時,是提示“繼續”
我們也許會想:當然應該有和兩個快捷鍵相對應的命令。那么“繼續”的命令是什么呢?你會發現原來沒有“調試.繼續”這個命令,而只有“調試.啟動”命令。在調試模式下提示只是被改名了(并沒產生新的命令)。
評論:這些細節對于很少用命令的程序員也許很難發現,對作者這樣的測試人員卻不能放過。
#313、不使用斷點來中斷調試
原文鏈接:You can break the debugger without using Breakpoints
操作步驟:
如果你使用時VB,可以在中斷執行的代碼處添加“stop”關鍵字,這個stop語句相當于添加一個斷點。有時候,輸入一個“stop”比記住單擊F9 或去拿鼠標更快。
如果你使用的c#,可以在你的代碼里使用“Debugger.Break()”來中斷調試,只有你使用System.Diagnostics名稱空間才是這樣。
評論:這種加中斷的方法,你估計用的不多吧。
#314、創建對象ID跟蹤你的對象
原文鏈接:How to create an Object ID to keep track of your objects
操作步驟:
(調試狀態)在你打開對象的實例的數據提示時候,在右鍵菜單里你會發現“創建對象ID”
如果你單擊“創建對象ID”,你會發現{1#}被增加在(對象的)值的內容里面。
你也可以在自動和監視窗口發現它
如果你要再次看見這個變量,你可以在監視窗口應用對象的ID,如下圖所示
你可以刪除對象ID,在右鍵菜單,或者監視(局部或自動)窗口。
評論:從Visual Studio 2005開始,引入了"Object Identity While Debugging"的概念,也就是說,系統給在調試階段的每個對象,都可以賦予一個別名,在調試時,直接引用該別名就可以了。假設在調試的時候,需要跟蹤比如dataset或者hashtable等對象,這些對象中包含了很多其他的子對象,如果想對這些數量眾多的子對象進行跟蹤的話,將十分麻煩。在Visual Studio 2005中,可以使用object identity(對象標識)的方法去標記每一個對象
#315、如何用找回源碼對話框代替“沒有可用的源碼”消息
原文鏈接:How to get the Find Source dialog back instead of the "There is no source code available" message
操作步驟:
有時候,你正在調試的時候,vs不知道源碼的位置在哪,vs會給你一個確認框,要求你指定源碼的位置。
如果你小心點擊了“取消”按鈕,會提示你“在當前位置沒有可用的源碼”
這時候,如果你停止,再試一次,你會發現查找代碼位置的對話框不再出現了。vs會直接提示你“沒有可用的源代碼”,即使你想再次告訴vs源碼的位置,也沒辦法了。
解決辦法如下:
右鍵點擊“解決方案”+“通用屬性”+“調試源碼文件”,有個“不查找這些源文件”的文本框
刪除文件所對應的行后,就可以在調試中再次出現查找源碼的對話框。
評論:這么細微的功能你沒注意吧。
#316、自動窗口和局部窗口的差異
原文鏈接:What's the difference between the Autos window and the Locals window
操作步驟:
自動窗口:顯示當前聲明和上一聲明。
局部窗口:顯示范圍內所有聲明。自動窗口是局部窗口的子集。
例如,如下代碼段,不做任何事,只產生未使用變量的警告。
在自動窗口,你可以看見上一個聲明和當前聲明被運算。
在局部窗口,你會看見所有的聲明,包括參數
評論:如果你關注更多的聲明運算建議你用局部窗口,如果你只關注當前聲明的話最好用自動窗口。
#317、在控制臺程序中用Ctrl+F5讓控制臺停留在打開的狀態
原文鏈接:If you do a Ctrl+F5 on a console application, the console stays open
操作步驟:
在控制臺程序中,啟動調試,如果沒有“stop/Debugger.Break()”或某種Console.Read()方法,控制臺就會瞬間出現然后消失。
如果你按Ctrl+F5啟動程序而不調試,在底部就會出現“按任意鍵繼續”的消息。
評論:作者對此頗有疑問,不太理解為什么在調試狀態控制臺會一閃而過,而看不到任何調試信息。這個問題確實讓人有些費解。
#318、在監視窗口增加$exception變量來捕獲異常
原文鏈接:You can add $exception to the Watch window to see the caught exception
操作步驟:
如果你想迅速知道異常是否被捕捉,而不必再try catch 中找出異常的變量名,你可以在監視窗口輸入:$exception
評論:這個方法非常不錯,在try catch里看是否捕捉了異常,速度很快。
#319、使用文本可視化工具
原文鏈接:How to use the Text Visualizer
操作步驟:
例如你有一些很長的字符串,也許是sql鏈接字符串或者只是一些表格數據,如果你需要查看真個字符串。
當然你可以把這些字符串復制到記事本去查看內容,不過,在vs里也可以實現這個功能。
打開字符串數據提示,單擊下拉箭頭
你會發現可視化的工具供選擇
因為是字符串,所以選擇“文本可視化工具”。注意這個對話框可以調整大小,也可以從里面復制和粘貼。
評論:文本可視化工具是我用的最多的可視化工具了,看比較成的sql語句非常方便。
#320、文本可視化工具支持文字換行
原文鏈接: The Text Visualizer supports word wrap
操作步驟:
在可視化文本工具底部有個選擇切換"換行"的選項,給你一種記事本的體驗。
如果不選擇該項,文字就會超出對話框的范圍。
評論:如果不換行,看起來就太痛苦了。
更多有關Visual Studio 2008 每日提示文章見:Visual Studio 2008 每日提示系列索引
更多文章見:守望軒[http://www.watch-life.net/]
總結
以上是生活随笔為你收集整理的Visual Studio 2008 每日提示(三十一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 遵循Modbus协议通过Usb(Ch37
- 下一篇: 我的第一个CCIE-ccie6961