Анализ значений, возвращаемых из вызовов методов

В окне Видимые можно проверить возвращаемые значения методов .NET Framework и C++ при выполнении шага с обходом вызова метода или шага с выходом из метода. Эта функция может быть полезна в ситуации, когда результат вызова метода не сохраняется в локальной переменной (как, например, в случае, когда метод используется в качестве параметра или возвращаемого значения другого метода).

Описание

Просмотр возвращаемых значений метода в окне "Видимые"

Просмотр возвращаемых значений методов .NET Framework в окнах "Интерпретация" и "Контрольные значения"

Просмотр возвращаемых значений метода в окне "Видимые"

  1. Создайте консольное приложение C# или C++.

  2. Замените метод Main (C#) или метод _tmain (C++) следующим кодом.

    //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;
    }
    
  3. Установите точки останова на вызовах методов Method1 и Method2 в основном методе.

  4. В меню Отладка выберите Начать отладку (клавиатура: F5), чтобы начать отладку и прервать выполнение на вызове метода Method1.

  5. Выберите Отладка, Шаг с заходом (клавиатура: F10), чтобы войти в метод Method1.

  6. Выберите Отладка, Шаг с обходом (клавиатура: F11), чтобы перейти первую строку кода метода Method1.

  7. Обратите внимание, что в окне Видимые отображаются возвращаемые значения методов Multiply, FourTimes, Five и Six со значком возвращаемого значения. (Чтобы открыть окно Видимые, выберите Отладка, Окна, Видимые или нажмите клавиши CTRL + ALT + V, A)

    Возвращаемые значения методов в окне "Видимые"

  8. Выберите Отладка, Продолжить (клавиатура: F5), чтобы продолжить выполнение до вызова метода Method2.

  9. Выполните шаг с заходом в метод Method2.

  10. Выполните шаг с обходом оператора Return.

  11. Обратите внимание, что в окне Видимые отображается возвращаемое значение метода Five (значение, непосредственно возвращенное методом Method2).

    Возвращаемое значение в окне "Видимые"

Просмотр возвращаемых значений методов .NET Framework в окнах "Интерпретация" и "Контрольные значения"

Возвращаемое значение вызова метода .NET Framework можно также просмотреть, введя $ReturnValue в окне Интерпретация или в окне контрольных значений, после того как выполнен шаг с обходом вызова метода или шаг с выходом из метода. Чтобы открыть окно Интерпретация, выберите Отладка, Окна, Интерпретация (клавиатура: CTRL + ALT + I).