WinAPI でウィンドウを作成するクラスが欲しいです。wndproc 関数は、そのクラスのメソッドである必要があります。そのため、その方法を見つけましたが (以下のコードを参照)、残念ながら VS2013 ではコンパイルできません。
このコードは、エラーや警告なしで VS2010 でコンパイルされました。
私の .h ファイルで:
typedef long(__stdcall* WNDPROC)(void*,unsigned int,unsigned int,long);
class LWindow
{
private:
//...
static LRESULT CALLBACK wndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam);
public:
LWindow(int width, int height, bool framed);
~LWindow();
//...
};
私の .cpp ファイルで:
LWindow::LWindow(int width, int height, bool framed)
{
//...
WNDCLASS wc = {0};
wc.lpfnWndProc = wndProc;
//...
}
エラーメッセージは
1>l:\opt\microsoft visual studio 12.0\vc\include\xrefwrap(283): error C2064: term does not evaluate to a function taking 0 arguments