私はこのコードを持っています、
#include <iostream>
void foo(int *a)
{
std::cout<<*a<<std::endl;
}
int main()
{
int i;
foo(&i);
}
これは、初期化されていない変数が使用されていることを示しています。
エラー C4700に依存するだけでなく/RTCuも試しましたが、上記のコードでは、コンパイラはこれをエラーとしてフラグ付けしていません。
コード分析も実行してみましたが、コードフラグメントとして問題がないと報告されました。
では、ソース コード内の初期化されていない変数を特定する信頼できる方法は何でしょうか?
私valgrind
はここですばらしい仕事をすることを知っていますが、Windows API と MFC への呼び出しが多いので、私にとってはオプションではありません。