读书人

在win32中怎的实现递归

发布时间: 2013-09-24 11:29:02 作者: rapoo

在win32中怎样实现递归
本帖最后由 wu4357815 于 2013-09-18 11:38:13 编辑 在win32中怎样实现递归,比方说汉诺塔递归实现,不可以用普通方法实现。。。但是如果调用了递归,消息循环好像就终止了。在dos下可以用delay(函数来实现暂停,但是win32下显然不行)求大神指导。。。
[解决办法]
如果递归层比较深时间比较长 可以考虑后台线程启动 不要阻塞消息环
[解决办法]
不知道你指的是什么情况下,只有涉及到界面或数据库等时才不好使用,这时尽量用postmessage操作界面。
[解决办法]
开线程吧,线程中递归,用Sleep暂停.发消息给主线程绘制图形.
[解决办法]
用线程吧 不然就看能不能把递归改成循环
[解决办法]

引用:
我用c谢了一个递归程序,图形界面汉诺塔,用图形来表示汉诺塔移动,每递归一次,就画一次,用delay()函数来暂停,想把他改写成win32图形程序,但是在win32中就不行了,不能暂停(即使停了也阻止了消息循环)
把界面的句柄传入工作线程,在窗口过程中写个自定义消息的处理函数用于绘图,当需要绘图时,线程用postmessage发送自定义消息通知界面调用处理函数绘图,记住只能用postmessage,不能用sendmessage,不然照样阻塞。

读书人网 >VC/MFC

热点推荐