質問: C++のvisual c++ 2008 express editionについてです。 デバッグボタンを押しても、前に実行した結果が出てしまいます。 因みに、実行したいソースは↓です。 #include #include //関数プロトタイプ宣言 LRESULT WINAPI MyWinProc(HWND, UNIT, WPARAM, LPARAM); int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hpInst, LPSTR lpCmd, int nCmd) { MessageBox(NULL, _T("テスト"), _T("winapp"), MB_OK); return 0; } LRESULT WINAPI MyWinProc(HWND hWnd, UNIT msg, WPARAM wPARAM, LPARAM lParam) { switch(msg) { case WM_LBUTTONDOWN: //左クリック MessageBox(hWnd, _T("クリックされた"), _T("winapp"), MB_OK); break; default: //その他メッセージの処理 return DefWindowProc(hWnd, msg, wParam, lParam); } return 0; } お願いします。
回答: アウトプットウィンドウ(出力ウィンドウ)の結果はどうなってますか? 恐らく、コンパイルエラーになっていると思われます。 ``` 1>------ ビルド開始: プロジェクト: test, 構成: Debug Win32 ------ 1>2013/11/05 21:44:17 にビルドを開始しました。 1>InitializeBuildStatus: 1> "AlwaysCreate" が指定されたため "Debug\test.unsuccessfulbuild" を作成しています。 1>ClCompile: 1> test.cpp 1>test.cpp(5): error C2061: 構文エラー : 識別子 'UNIT' 1>test.cpp(14): error C2061: 構文エラー : 識別子 'UNIT' 1>test.cpp(17): error C2065: 'msg' : 定義されていない識別子です。 1>test.cpp(17): error C2050: switch 式の結果は、整数値になりませんでした。 1>test.cpp(23): error C2065: 'msg' : 定義されていない識別子です。 1>test.cpp(23): error C2065: 'wParam' : 定義されていない識別子です。 1>test.cpp(23): error C2065: 'lParam' : 定義されていない識別子です。 1> 1>ビルドに失敗しました。 1> 1>経過時間 00:00:02.77 ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ========== ``` | 誤 | 正 | | --- | --- | | UNIT | UINT | | WPARAM wPARAM | WPARAM wParam | 一応、コンパイルエラーを取り除いた版は↓こちら。 ``` #include #include //関数プロトタイプ宣言 LRESULT WINAPI MyWinProc(HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hpInst, LPSTR lpCmd, int nCmd) { MessageBox(NULL, _T("テスト"), _T("winapp"), MB_OK); return 0; } LRESULT WINAPI MyWinProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { case WM_LBUTTONDOWN: //左クリック MessageBox(hWnd, _T("クリックされた"), _T("winapp"), MB_OK); break; default: //その他メッセージの処理 return DefWindowProc(hWnd, msg, wParam, lParam); } return 0; } ```