2
如何将key_callback与包装类实例相关联?
我正在尝试将我的GLFW3调用包装到一个类中: class WindowManager { private: GLFWwindow* window_; GLFWmonitor* monitor_; Keyboard* keyboard_; ... } 我正在尝试设置一个单例键盘类,该类收集执行期间的按键。在GLFW中,我可以设置一个key_callback超出类定义的函数(一个自由函数): WindowManager::WindowManager() { ... glfwSetKeyCallback(window_, key_callback); ... } // not a class function void key_callback(GLFWwindow* window, int key, int scan code, int action, int mods) { ... } 如何关联回调和WindowManager实例,以便设置keyboard_对象值?我不能使它key_callback成为成员函数,WindowManager因为那将是WindowManager类的成员,并且在C ++类的成员函数中,它们的名称会晃晃,因此该函数将不起作用。