I want to pass a pointer to a procedure in c++. I tried passing this LRESULT(*)(HWND, UINT, WPARAM, LPARAM) prc but it didn’t work. How is this done?
Thanks
HWND OGLFRAME::create(HWND parent, LRESULT(*)(HWND, UINT, WPARAM, LPARAM) prc)
{
if(framehWnd != NULL)
{
return framehWnd;
ZeroMemory(&rwc,sizeof(rwc));
}
}
By “it didn’t work” I mean it’s a syntax error.
from the compiler:
Error 2 error C3646: 'prc' : unknown override specifier c:\users\josh\documents\visual studio 2008\projects\vectorizer project\vectorizer project\oglframe.h 10
Error 5 error C3646: 'prc' : unknown override specifier c:\users\josh\documents\visual studio 2008\projects\vectorizer project\vectorizer project\oglframe.cpp 7
Error 1 error C2146: syntax error : missing ')' before identifier 'prc' c:\users\josh\documents\visual studio 2008\projects\vectorizer project\vectorizer project\oglframe.h 10
Error 4 error C2146: syntax error : missing ')' before identifier 'prc' c:\users\josh\documents\visual studio 2008\projects\vectorizer project\vectorizer project\oglframe.cpp 7
Error 3 error C2059: syntax error : ')' c:\users\josh\documents\visual studio 2008\projects\vectorizer project\vectorizer project\oglframe.h 10
Error 6 error C2059: syntax error : ')' c:\users\josh\documents\visual studio 2008\projects\vectorizer project\vectorizer project\oglframe.cpp 7
You could also just use the WNDPROC type: