-2
#include<windows.h>

LRESULT CALLBACK window_callback(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
    return DefWindowProc(hwnd, uMsg, wParam, lParam);

}
    
int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) {
    // Create Window Class
    WNDCLASS window_class = {};
    window_class.style = CS_HREDRAW | CS_VREDRAW;
    window_class.lpszClassName = L"Game Window Class";
    window_class.lpfnWndProc = window_callback;

    // Register Class
    RegisterClass(&window_class);


    // Create Window
    CreateWindow(window_class.lpszClassName, "My First Game!", WS_OVERLAPPEDWINDOW | WS_VISIBLE, CW_USEDEFAULT, CW_USEDEFAULT, 1280, 720, 0, 0, hInstance, 0);
        
}

我正在关注 Dan Zaidan 关于如何在 C++ 中制作 pong 的教程,但它已经过时了一两年,这可能就是我收到这些错误的原因:

E0029 期望一个表达式

C2059 语法错误:')'

还有几行代码,如有必要,我可以包含它们。

编辑 1:添加了 1 个 CW_USEDEFAULT。我仍然收到错误,E0167 和 C2664。编辑 2:添加了更多代码,希望能让你们更好地理解。

4

1 回答 1

1

获取 E0167 和 C2664 意味着您正在尝试使用 ascii 字符串,但您的项目设置设置为 Unicode。当您定义使用“L”前缀的类名字符串时,您可以在代码中看到。到处都这样做。更改"My First Game!"L"My First Game!"

于 2021-09-24T15:49:59.027 回答