4

Visual Studio 2012 には、次の非常にシンプルな C++ プログラムがあります。

#include "stdafx.h"
#include <iostream>

int _tmain(int argc, _TCHAR* argv[])
{
    std::cout << std::cout;
    int i = 1;
    return 0;
}

ご参考までに、「std::cout << std::cout」の部分は、関数のスコープ内で std:cout にアクセスできることを示すためだけのものです。はい、コンソールへのポインターを出力するためのものです。

そこで、「int i = 1」にブレークポイントを設定しました。ブレークポイントがトリガーされたら、コマンド ウィンドウ (またはイミディエイト ウィンドウ) から std::cout を調べたいので、次のように入力します。

>Debug.Print std::cout

ただし、次のエラーが返されます。

識別子「std」は未定義です

なぜこれが起こるのかわかりません.stdは実行されている関数の範囲内にある必要があります. 同じことが #include ディレクティブからの他のものにも当てはまります。Debug.Print を使用して検査することはできません。Visual Studio 2012 で実行スコープでアクセス可能なすべてのものを検査するには、何を使用すればよいですか? Debug.Print でのみローカル変数にアクセスできるようです。

4

0 に答える 0