GLFW Can'无论怎样都不能创建窗口

GLFW Can't create window no matter what

本文关键字:都不能 创建 窗口 Can GLFW      更新时间:2024-09-26

我在Windows 7 64位上运行glfw,但我运行的是32位版本的glfw和32位版的mingw,我也在2019版中尝试过64位版本。事情是glfw成功初始化,但创建窗口功能失败(我可以保证(,在互联网上搜索,我找不到正确的解决方案。总之,这是我的代码:

#include "include/glfw3.h"
// Entry point
int main() {
// Initialize glfw
if (!glfwInit()) return -1;
// Window hints
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
// Create widnow
GLFWwindow* wind = glfwCreateWindow(800, 600, "All", NULL, NULL);
glfwMakeContextCurrent(wind);
if (wind == NULL) return -2; 
// Main loop
while (!glfwWindowShouldClose) {
glfwPollEvents();
}
// Terminate glfw
glfwDestroyWindow(wind);
glfwTerminate();
return 0;
}

没有编译错误。感谢您的帮助。

glfwWindowShouldClose是一个检查窗口是否应该关闭的函数,而不是全局布尔。所以循环条件CCD_ 2实际上判断这个东西是否:;CCD_ 3";(实际上指的是函数指针(是nullptr。由于glfwWindowShouldClose是一个具体的函数,在我们的情况下,答案是否定的,循环将被跳过,不会发生错误。

要修复它,请打开此:

// Main loop
while (!glfwWindowShouldClose) {
glfwPollEvents();
}

进入这个:

// Main loop
while (!glfwWindowShouldClose(wind)) {
glfwPollEvents();
}