如何保持循环直到函数返回
How to keep looping till a function returns?
我使用的是一个C++图形库,它具有函数void WaitForMouseDown()
和void WaitForMouseUp()
。WaitForMouseDown函数等待鼠标按钮按下,然后返回。WaitForMouseUp等待按钮释放。库bool isMouseDown()
中还有另一个函数,如果鼠标按钮当前处于按下状态,则返回true
。
现在,当用户第一次点击时,我必须开始在循环中做一些事情,并保持循环直到用户第二次按下鼠标。
我尝试过以下方法,但由于某种原因,程序在第二次点击后崩溃。有什么想法吗,我做错了什么?
int main(){
WaitForMouseUp();
while(!isMouseDown()){
//do something
}
return 0;
}
如果//do something
不包括轮询鼠标或对窗口系统事件进行操作(即不调用库),那么这里有一个明显的无限循环:isMouseDown
将始终返回true
,因为将其设置为false
的事件会在事件队列中休眠。
我认为应该是
int main()
{
WaitForMouseUp();
bool done = false;
while(!done) {
//do something
done = isMouseDown();
}
相关文章:
- 从函数返回const char*数组
- 检查函数返回类型是否与STL容器类型值相同
- 从 c 或 cpp 系列子函数返回到主函数
- 从函数返回任意简单类型的数据
- 警告:在函数返回类型 [-Wignore 限定符] 时忽略类型限定符
- 从 C++ 中的函数返回数组地址问题
- VirtDisk.h QueryChangesVirtualDisk() 函数返回 RangeCount 为 0
- 为什么glGetSubroutineIndex为不同的函数返回相同的值?
- 在 c++ 中将函数返回类型指定为模板参数
- 从封装在对象中的函数 C++ 返回时为空的列表
- 为什么向量内部的指针在从函数返回时会发生变化?
- 函数返回的 rvalue 引用(表达式)是 xvalue - 但没有标识?
- 程序中的布尔函数返回输入的范围无论如何都是无效的
- 寿命延长从函数返回引用
- 程序不向函数返回值
- 字符串函数返回奇怪的值
- 类的大问题,以及从空函数c++返回
- 为什么在尝试测量函数返回所需的时间时,我的运行时编号是错误的?
- C++二叉搜索树模板从函数返回节点
- NVCC 错误:string_view.h:constexpr 函数返回是非常量