8

VC ++のデバッグモード中に関数を呼び出すことはできますか?ブレークポイントを設定した関数があると仮定します。デバッグ中にその時点で実行が停止した場合、次のコード行に進む前に他の関数を呼び出してその結果を確認できますか?

4

2 に答える 2

5

できると思います。イミディエイトウィンドウと呼ばれていると思います。私はVS2010Ultimateを使用しているので、それがあなたのバージョンに存在するかどうかはわかりません。

Ctrl+ Alt+I

ただし、これは関数が値を返す場合の出力のみを出力します。また、動作しない場合もあります。

あなたが持っているとしましょう:

#include <iostream>

int number = 10; //global
void setNumber(int n);

int main()
{
    std::cout<<std::endl; //breakpoint 1 here
    setNumber(4);
    std::cout<<std::endl; //breakpoint 2 here
}

int getNumberSquared()
{
    return number * number;
}

void setNumber(int n)
{
    number = n;
}

ブレークポイント1に遭遇したら、ショートカットを押して次のように入力します。

getNumberSquared()

出力は次のようになり100 ます。ブレークポイント2に遭遇した後、同じことを行うと、出力は次のようになります。16

于 2011-12-10T22:19:44.670 に答える
1

Visual Studio には、特定のステートメント (right click + set next statementまたはctrl+shift+F10) にジャンプするオプションがありますが、そうする場合は注意してください。関数呼び出しでは、レジストリが有効である必要があります。これは、クラスをまたがったりスコープ外に移動したりすると、ほとんどの場合そうではなくなります。

于 2011-12-09T20:18:19.880 に答える