Кажется, это должно быть довольно просто. У меня есть класс:
class Simple
{
public:
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
...
}
};
и my WinMain
:
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR commandLine, int cmdShow)
{
Simple *simple = new Simple();
...
wndClass.lpfnWndProc = simple->WndProc;
...
}
Когда я пытаюсь, я получаю:
error C2440: '=' :cannot convert from 'LRESULT (__stdcall Simple::* )(HWND,UINT,WPARAM,LPARAM)' to 'WNDPROC'
Есть ли причина, по которой я не могу иметь WndProc
в классе? Похоже, это было бы очень полезно.