我剛剛在VS.NET監視窗口中瞭解到了有關$的異常。這顯示了當前拋出的異常,並且不需要找到小驚歎號圖標並將其懸停在其上方,節省了大量時間。.NET中的Visual Studio觀察窗口中提供了哪些特殊變量?
觀察窗口中還有其他什麼特殊變量?
(注:這個問題是關於.NET,而不是C++。)
我剛剛在VS.NET監視窗口中瞭解到了有關$的異常。這顯示了當前拋出的異常,並且不需要找到小驚歎號圖標並將其懸停在其上方,節省了大量時間。.NET中的Visual Studio觀察窗口中提供了哪些特殊變量?
觀察窗口中還有其他什麼特殊變量?
(注:這個問題是關於.NET,而不是C++。)
在Visual Studio for .NET中支持Pseudovariables調試:
$exception
會顯示錯誤消息。僅在Visual C#中,當異常助手被禁用時,當發生異常時,$exception
會自動添加到本地人窗口中。僅適用於Visual Basic中的以下內容:
$delete,
變量或$$delete,
變量。$objectid,
表達式或$listobjectids,
表達式。IDynamicMetaObjectProvider
的對象顯示特殊的動態視圖節點。接口。語法是$dynamic,
對象。此功能僅適用於使用.NET Framework版本4的代碼。請參閱Dynamic View。如果你右擊監視窗口中的任何變量,您可以創建一個對象ID。這會給你一個數字,例如第一個對象ID將是1#。
對象ID代表特定的實例。然後可以在監視窗口中監視實例,就像常規變量一樣,但即使當本地引用超出範圍時,也可以繼續觀察實例。當它最終被垃圾收集時,你將無法訪問它。
使用「@err」將顯示GetLastError()的值,「@ err,hr」顯示錯誤消息。
$ user僞變量是唯一記錄的其他變量。在VS2010中,VB.NET調試器獲取some new ones。
VB支持的$ dynamic也可以在C#中通過「dynamic」工作。但其他人不確定。 http://msdn.microsoft.com/en-us/library/dd998308%28v=VS.100%29.aspx – scobi 2010-03-06 01:52:34
我在該MSDN文章中看到了其他內容。它支持__ComObject的自動動態視圖。棒極了。 – 2010-03-06 02:18:35
@ERR ;最後誤差值,由GetLastError函數()API函數返回的值相同
@TIB ;線程信息塊爲當前線程
@CLK ;未記錄的時鐘寄存器;僅在監視窗口可用
@EAX,@EBX,@ECX,@EDX,@ESI,@EDI,@EIP,@ESP,@EBP,@EFL ;英特爾CPU寄存器
@CS ,@DS,@ES,@SS,@FS,@GS ; Intel的CPU段寄存器
@ ST0,@ ST1,ST2 @,@ ST3,ST4 @,@ ST5,ST6 @,@ ST7 ;英特爾CPU浮點寄存器
這是來自C++的土地(以及@eax,@clk等),但我希望能從.NET世界中獲得更多。 – scobi 2010-03-05 01:45:21