为了账号安全,请及时绑定邮箱和手机立即绑定

请问c++怎么让函数等待特定函数运行后再调用呢?

请问c++怎么让函数等待特定函数运行后再调用呢?

C++
侃侃尔雅 2018-07-18 15:26:32
class Test{public:void mouse(); //鼠标点击获取坐标void getXY(Vector2 &p);//用户主动获取上次的坐标}调用的时候,Test test;test.mouse(); //然后鼠标操作test.getXY(p); //主动获取,如果没点击完成,卡在这里等待。如上。我试过了 关键段,互斥量,事件。。。都没成功。要么卡在getXY()上,不能鼠标操作。。要么直接getXY()已经运行完了,鼠标还没操作。。。。求大神。。。
查看完整描述

3 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

没看到具体实现代码,不太好判断什么问题
想要等待的话写一个循环,直到满足条件,比如说鼠标点击,然后退出循环

查看完整回答
反对 回复 2018-07-21
?
MYYA

TA贡献1868条经验 获得超4个赞

getXY()运行的时候,mouse()已经运行结束,即便鼠标点击也不会记录其坐标了。这种情况应该采用多线程吧,getXY()函数挂起,等待mouse()函数结束后再运行。


查看完整回答
反对 回复 2018-07-21
?
aluckdog

TA贡献1847条经验 获得超7个赞

可以查一下回调函数的相关概念,将后续需要执行的函数与将要执行的函数关联,待函数执行完成再调用后续的函数执行

查看完整回答
反对 回复 2018-07-21
  • 3 回答
  • 0 关注
  • 1390 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信