Указание на функцию, которая является членом класса - glfw setKeycallback
Я пишу приложение glfw, в котором я обернул функцию callse в простой класс. У меня проблемы с установкой обратного вызова ключа. Мой класс определяется как:
class GAME
{
private:
bool running;
public:
GAME();
int execute();
void events(int, int);
int loop();
int render();
};
Функция execute:
int GAME::execute()
{
glfwOpenWindow(640, 320, 8, 8, 8, 8, 0, 0, GLFW_WINDOW);
glfwSetWindowTitle("Viraj");
glfwSetKeyCallback(events);
running = true;
while(glfwGetWindowParam(GLFW_OPENED))
{
glfwPollEvents();
loop();
render();
}
return 0;
}
Компилируя следующий код в Visual Studio 2010, выдает ошибку:
error C3867: 'GAME::events': function call missing argument list; use '&GAME::events' to create a pointer to member
Использование & GAME :: events дает:
error C2664: 'glfwSetKeyCallback' : cannot convert parameter 1 from 'void (__thiscall GAME::* )(int,int)' to 'GLFWkeyfun' 1> There is no context in which this conversio,n is possible