c++ - 主循环不退出 SDL2、C++
问题描述
我正在尝试用 SDL2 做一个非常基本的主循环,但是窗口打开了,我无法关闭它。
我写了这段代码:
bool open = true;
while (open = true)
{
SDL_Event event;
while (SDL_PollEvent(&event) != 0)
{
if (event.type == SDL_QUIT)
{
open = false;
}
}
}
这会打开一个窗口,但是当我单击十字退出时无法关闭它。
我已经用这个代码替换了这个代码,在网上找到:
while (true)
{
// Get the next event
SDL_Event event;
if (SDL_PollEvent(&event))
{
if (event.type == SDL_QUIT)
{
// Break out of the loop on quit
break;
}
}
这有效,但我不明白为什么我的代码不能正确运行。
解决方案
你在这里做作业,使条件总是true
:
while (open = true)
您可以使用==
运算符进行比较,但实际上您不需要比较,您应该简单地编写:
while (open)
推荐阅读
- ios - didselectrowatindexpath 文本标签返回
- javascript - 使用setTimeOut后函数不显示父类 - jQuery
- php - PHPUnit 测试常量
- java - TestNG框架中的主要方法在哪里
- java - EntityManager Hibernate 5 没有持久性提供程序
- python - 通过 Web 服务公开 R 和 Python 脚本
- java - 将现有缓存作为映射转换为 Spring @Cacheable
- javascript - Chart.js - 如何调用未命名图表的更新函数?
- java - 如何禁用与 x11 窗口服务器的连接
- sql-server - 我们无法使用 POWER BI 提供的凭据进行身份验证