檢查方法呼叫的傳回值
在 [自動變數] 視窗中,您可以在不進入或者跳離方法呼叫時,檢查 .NET Framework 和 C++ 方法的傳回值。 當方法呼叫的結果不會儲存在區域變數中,例如,方法做為另一個方法的參數或傳回值時,這項功能會很有用。
內容
在自動變數視窗中檢視方法傳回值
在即時運算和監看式視窗中檢視 .NET Framework 方法傳回值
在自動變數視窗中檢視方法傳回值
建立 C# 或 C++ 主控台應用程式。
將 C# Main 方法或 C++ _tmain 方法取代為下列程式碼。
//static void Main(string[] args) { Method1(); // 1. Set a breakpoint here // 2. Then step into Method1 int y = Method2(); // 3. Set a breakpoint here // 4. Then step into Method2 static void Method1(){ // 1. Step over the following line int result = Multiply(FourTimes(Five()), Six()); // 2. Then view the return values in the Autos window } static int Method2(){ // 1. Step over the following line return Five(); // 2. Then view the return values in the Autos window } static int Multiply(int x, int y){ return x * y; } static int FourTimes(int x){ return 4 * x; } static int Five(){ return 5; } static int Six(){ return 6; }
void Method1(); int Method2(); int Multiply(int x, int y); int FourTimes(int x); int Five(); int Six(); int _tmain(int argc, _TCHAR* argv[]) { Method1(); // 1. Set a breakpoint here // 2. Then step into Method1 int x = Method2(); // 3. Set a breakpoint here // 4. Then step into Method2 } void Method1(){ // 1. Step over the following line int result = Multiply(FourTimes(Five()), Six()); // 2. Then view the return values in the Autos window } int Method2(){ // 1. Step over the following line return Five(); // 2. Then view the return values in the Autos window } int Multiply(int x, int y){ return x * y; } int FourTimes(int x){ return 4 * x; } int Five(){ return Six(); } int Six(){ return 6; }
在 main 方法中呼叫 Method1 和 Method2 時設定中斷點。
在 [偵錯] 功能表上,選擇 [開始偵錯] (鍵盤:F5) 開始偵錯並在 Method1 呼叫處中斷。
選擇 [偵錯]、[逐步執行] (鍵盤:F10) 進入 Method1。
選擇 [偵錯]、[不進入函式] (鍵盤:F11),不進入 Method1 的第一行程式碼。
在 [自動變數] 視窗中,記下顯示的 Multiply、FourTimes、Five 和 Six 方法傳回值,並包含傳回值圖示 (若要開啟 [自動變數] 視窗,請依序選擇 [偵錯]、[視窗]、[自動變數],或按 Ctrl + ALT + V、A)。
選擇 [偵錯]、[繼續] (鍵盤:F5),繼續執行至 Method2 的呼叫。
逐步執行 Method2。
不進入 return 陳述式。
請注意,[自動變數] 視窗會顯示 [Five] 方法的傳回值 (Method2 直接傳回的值)。
在即時運算和監看式視窗中檢視 .NET Framework 方法傳回值
在您不進入或跳離方法呼叫之後,也可以在 [即時運算] 視窗或某個監看式視窗中輸入 $ReturnValue,檢查 .NET Framework 方法呼叫的傳回值。 若要開啟 [即時運算] 視窗,請依序選擇 [偵錯]、[視窗]、[即時運算] (鍵盤:Ctrl + Alt + I)。