首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

求帮小弟我分析下有关问题原因,多谢

2013-03-26 
求帮我分析下问题原因,谢谢我定义了一个窗口类a:类中有一个私有成员 变量:ZQInfo tmpZQ(ZQInfo是个结构体

求帮我分析下问题原因,谢谢
我定义了一个窗口类a:类中有一个私有成员 变量:ZQInfo tmpZQ(ZQInfo是个结构体类型 )

然后实例化a,得到对象:窗口b.

通过postmessage往b中传消息,用WAPRAM附带一个ZQInfo类型的结构体变量m_stzqinfo,b 接受到这个消息后将

m_stzqinfo 给 tmpZQ赋值 
语句如下:
memset(&tmpZQ, 0, sizeof(ZQInfo));
memcpy(&tmpZQ, (ZQInfo *)Message.WParam,sizeof(ZQInfo));

现在问题是为什么下次我再次给b以同样的方式发送消息时tmpZQ中的内容不应该是为前一次消息传递过来的m_stzqinfo
的值么,可为什么tmpZQ中的内容为空呢.


[解决办法]
你用的PostMessage,当接收方开始处理这个消息的时候,发送方的tmpZQ已经过了生命周期,内容为空就不错了,很有可能AV的。

两种解决办法:
1. 换成SendMessage
2. 用new创建一个ZQInfo,然后接收方负责delete

热点排行