C++ Fehler | Neuling

    • C++ Fehler | Neuling

      Hallo Leutz.
      Also ich hab mit einem Buch über Spieleprogrammierung mit C++ und DirectX angefangen. Nachdem ich einen Teil geschrieben hatte und es endlich compilieren konnte, bekam ich einen Fehler.

      Zeile:
      115 Warnung
      151 Fehler
      152 Folgefehler

      Da ich langsam am Verzweifeln bin und ich diese Stelle schon 5x mal neu geschrieben hab, wollte ich hier fragen ob mir wer helfen kann?

      MfG Sitemaster

      C-Quellcode

      1. //--------------------------
      2. // Defines
      3. //--------------------------
      4. #define WINDOW_CLASS_NAME "Game Shell Window"
      5. #define WIN32_LEAN_AND_MEAN
      6. //--------------------------
      7. // INCLUDES
      8. //--------------------------
      9. #include <windows.h>
      10. //--------------------------
      11. // MACROS
      12. //--------------------------
      13. #define KEYDOWN(vk_code) ((GetAsyncKeyState(vk_code)&0x8000)?1:0
      14. #define KEYUP(vk_code) ((GetAsyncKeyState(vk_code)&0x8000)?1:0
      15. //--------------------------
      16. // GLOBALS
      17. //--------------------------
      18. HWND main_window_handle = NULL;
      19. HINSTANCE hinstance_app = NULL;
      20. //--------------------------
      21. // Wichtige Game-Funktionsprototypen
      22. //--------------------------
      23. void Game_Shutdown(void);
      24. void Game_Init(void);
      25. void Game_Main(void);
      26. //--------------------------
      27. // Funktionsdefinitionen
      28. //--------------------------
      29. LRESULT CALLBACK WindowProc(HWND hwnd,
      30. UINT msg,
      31. WPARAM wparam,
      32. LPARAM lparam)
      33. {
      34. PAINTSTRUCT ps;
      35. HDC hdc;
      36. // Nachrichtenverarbeitung
      37. switch(msg)
      38. {
      39. case WM_CREATE:
      40. {
      41. return(0);
      42. }
      43. break;
      44. case WM_PAINT:
      45. {
      46. hdc = BeginPaint(hwnd,&ps);
      47. EndPaint(hwnd,&ps);
      48. return(0);
      49. }
      50. break;
      51. case WM_DESTROY:
      52. {
      53. PostQuitMessage(0);
      54. return(0);
      55. }
      56. break;
      57. default:
      58. break;
      59. }
      60. return (DefWindowProc(hwnd, msg, wparam, lparam));
      61. }
      62. ////////////////////////////////////////////////////////
      63. int WINAPI WinMain(HINSTANCE hinstance,
      64. HINSTANCE hprevinstance,
      65. LPSTR lpcmdline,
      66. int ncmdshow)
      67. {
      68. WNDCLASSEX winclass;
      69. HWND hwnd;
      70. MSG msg;
      71. // Fenstereigenschaften festlegen
      72. winclass.cbSize = sizeof(WNDCLASSEX);
      73. winclass.style = CS_HREDRAW | CS_VREDRAW;
      74. winclass.lpfnWndProc = WindowProc;
      75. winclass.cbClsExtra = 0;
      76. winclass.cbWndExtra = 0;
      77. winclass.hInstance = hinstance;
      78. winclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
      79. winclass.hCursor = LoadCursor(NULL, IDC_ARROW);
      80. winclass.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
      81. winclass.lpszMenuName = NULL;
      82. winclass.lpszClassName = WINDOW_CLASS_NAME;
      83. winclass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
      84. hinstance_app = hinstance;
      85. if(!RegisterClassEx(&winclass))
      86. return(0);
      87. if(!(hwnd = CreateWindowEx(NULL,
      88. WINDOW_CLASS_NAME,
      89. "My Game Shell",
      90. WS_OVERLAPPEDWINDOW | WS_VISIBLE,
      91. 0,0,
      92. 800,600,
      93. NULL,
      94. NULL,
      95. hinstance,
      96. [COLOR=red]NULL)))[/COLOR]
      97. return(0);
      98. main_window_handle = hwnd;
      99. Game_Init();
      100. while(TRUE) // Nachrichtenweiterleitung
      101. {
      102. if(PeekMessage(&msg,NULL,0,0,PM_REMOVE))
      103. {
      104. if(msg.message == WM_QUIT)
      105. break;
      106. TranslateMessage(&msg);
      107. DispatchMessage(&msg);
      108. }
      109. Game_Main();
      110. }
      111. Game_Shutdown();
      112. return(msg.wParam);
      113. }
      114. ////////////////////////////////////////////////////////
      115. void Game_Init(void)
      116. {}
      117. ////////////////////////////////////////////////////////
      118. void Game_Main(void)
      119. {
      120. [COLOR=red] // Mit ESC die Anwendung verlassen
      121. if(KEYDOWN(VK_ESCAPE))
      122. SendMessage(main_window_handle,WM_CLOSE,0,0);
      123. }[/COLOR]
      124. ////////////////////////////////////////////////////////
      125. void Game_Shutdown(void)
      126. {}
      Alles anzeigen