MFC 关于OnPaint()函数未执行完问题,代码如下

Chasen_y 2014-05-11 12:10:11
未执行到q=p;下面的都没有执行,就跳回OnPaint()了。这是为啥啊?求指教
void COneView::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: 在此处添加消息处理程序代码
// 不为绘图消息调用 CView::OnPaint()

/*#ifndef yyyyyyyy_y
#define yyyyyyyy_y

#endif */
CBitmap memBitmap;//定义位图对象
CDC memDC;//定义临时设备
BITMAP Map;
CRect rectClient;
int DeciceNum;
PFlinklist *g_plist=NULL;
PFlinklist *p=g_plist->next,*q;

q=p;


GetClientRect(rectClient);

while(p != NULL)
{
DeciceNum++;
p = p->next;
}
p = q;
...全文
245 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lis2012 2014-05-11
  • 打赏
  • 举报
回复
你是不是在release下编译的 如果是的话,编译器编译的时候采用了优化技术 PFlinklist *g_plist=NULL;//这里为空 PFlinklist *p=g_plist->next,*q; //从这里以后没有任何执行效果,直接跳过了 q=p; GetClientRect(rectClient); while(p != NULL) { DeciceNum++; p = p->next; } p = q;
worldy 2014-05-11
  • 打赏
  • 举报
回复
lz使用了多线程?
Chasen_y 2014-05-11
  • 打赏
  • 举报
回复
引用 3 楼 xiaohuh421 的回复:
PFlinklist *p=g_plist->next 到这里程序就已经崩溃了, 肯定会弹出异常, 但你的环境没有弹出, 那就是可奇葩了.
对的!奇葩就这么发生了,在实验室电脑编译通过,回来用自己电脑发现链表头指针没有传过来 多谢多谢
Chasen_y 2014-05-11
  • 打赏
  • 举报
回复
引用 2 楼 lis2012 的回复:
你是不是在release下编译的 如果是的话,编译器编译的时候采用了优化技术 PFlinklist *g_plist=NULL;//这里为空 PFlinklist *p=g_plist->next,*q; //从这里以后没有任何执行效果,直接跳过了 q=p; GetClientRect(rectClient); while(p != NULL) { DeciceNum++; p = p->next; } p = q;
问题已经解决了 链表头指针没有传过来 thankyou
Chasen_y 2014-05-11
  • 打赏
  • 举报
回复
引用 1 楼 worldy 的回复:
lz使用了多线程?
没有额 用的链表 昨天晚上已经调出来了 感谢
xiaohuh421 2014-05-11
  • 打赏
  • 举报
回复
PFlinklist *p=g_plist->next 到这里程序就已经崩溃了, 肯定会弹出异常, 但你的环境没有弹出, 那就是可奇葩了.

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧