我正在尝试使用GLFW作为静态库来编译程序。我确信我已正确链接了所有内容,因为其他GLFW函数不会引发任何错误。这些仅是使用GLFWwindow *作为参数的函数。
例如:
glfwMakeContextCurrent(window); //window is a pointer of type GLFWwindow
错误:
无效的参数'候选者为:void glfwMakeContextCurrent(*)'
这给我抛出了一个错误。参数窗口无效。
其他期望指向GLFWwindow指针的函数也会引发错误。
但是其余的,没有GLFWwindow *的函数作为预期参数编译并可以正常工作。
我正在使用MinGW32,Eclipse CDT,Win7。
(我确定我使用的是32位GLFW)
是什么原因,为什么他不接受我的指针?
P.S .: Eclipse编译glfwMakeContextCurrent(0);当我将鼠标悬停在错误行上时,它提示我glfwMakeContextCurrent(*);
最佳答案
glfw中不存在glfwWindowMakeContextCurrent
函数。根据您设置编译器的方式,它可能会假定它存在,并且默认情况下会假定它采用整数参数,因此由于此类类型不匹配,它可能会失败。但是,您可能正在寻找glfwMakeContextCurrent
函数,该函数的确使用了GLFWwindow*
参数。
关于c++ - GLFW错误-GLFWwindow *无法识别为有效参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18673757/